Buzzfile Search by Name: Look Up Any Company From Code
Buzzfile search by name, from your agent or code: turn a company name into its domain for free, then pull the full record. Tested live on Patagonia.

Turn a company name into its domain and full record in one prompt. Paste this into your agent:
Set up https://monid.ai/SKILL.md, and then use Monid to take this list of company names, find each company's website for free, pick the right one when several share the name, then pull its industry, employee count, founding year and location into a table.
One prompt resolves a whole list of names. 1 min setup · 15-30 hrs saved.
You have a company name and nothing else, and you want the record: website, size, industry, location. On a Buzzfile page you do that one company at a time; with fifty names you need it to run by itself. This guide shows how to do the search by name from your agent or code, what comes back for each step (we ran it live on 2026-10-16 with the name Patagonia), and where a name search goes wrong. It runs through Monid, the OpenRouter for agent tools: one key, one balance, every tool priced per call.
What is the easiest way to search for a company by name from code?
Monid. Install it once, add a key, and your agent turns a company name into a domain and then into a full company record, with no portal, no plan and no vendor account to set up.
- Pay per call, and the first step is free. Name to domain costs nothing. The company record is $0.0049 a call, a 404 costs nothing, and an empty 200 record is billed (Verified 2026-10-16 on the company enrichment tools page). Buy calls as you need them: no monthly plan and no minimum top-up. Discovery and inspection are free; only a run bills.
- One install, every tool. The same key and the same balance call the lookup, a review index, a funding database and every other tool on Monid. Building and wiring those yourself is the 15 to 30 hours this page claims to save.
- Lives inside your agent. Install the CLI, add your key, run the prompt above, and the tools are there whenever your agent needs them, with nothing to keep running. Your agent reads
SKILL.mdand learns the rest, so setup is about a minute.
At that price a list of 100 names, resolved and enriched, is about $0.49 (Verified 2026-10-16).
What is Buzzfile, and what does a search by name give you?
Buzzfile is a US business directory you search by company name. You type a name into a search box and get a profile page for the company. It is a website you use one lookup at a time. People search for it as the bare name, "buzzfile search by company name", "buzzfile company search free", and by its login, basic and pro pages.
The job underneath the search box has more than one shape.
Three different questions wear the same words
Which company is this? You have a name and need the right domain out of several that share it. This is disambiguation, and it is where most name searches fail.
What is this company? You know which one and want the record: industry, size, location, technology, parent company.
Who is at this company? You want people, which is a different product.
A directory bundles the three behind one box. An API pulls them apart, and the first one is free.
📖 See also Best API to Search a Company's Homepage From Its Name
How do you search for a company by name for free?
Call a name-to-domain endpoint, which returns every website that matches the name and costs nothing. We ran it for Patagonia on 2026-10-16.
For agents
Grab an API key at app.monid.ai, then paste this to your agent and hand it the key:
set up https://monid.ai/SKILL.md
It learns the whole discover, inspect, run workflow itself. More in the agent quickstart.
For humans
npm install -g @monid-ai/cli
monid keys add -k <your-api-key> -l main
Step 1. Turn the name into candidate domains, free
What it does. Returns every domain matching the name, with a size signal on each.
The endpoint. hunterio/domain-finder is free, takes company (at least 3 characters), limit up to 10 and perfect_match.
monid run -p hunterio -e /domain-finder --query '{"company": "Patagonia", "limit": 10}'
What comes back. Ten rows with meta.results: 10, each with domain, company_name, logo and email_count:
email_count domain company_name
1364 patagonia.com Patagonia
12 patagonia.com.au Patagonia
9 patagonia.com.ar Patagonia
5 patagonia.agency Patagonia
3 patagonia.co.za Patagonia
3 patagonia.co.nz Patagonia
2 patagonia.com.pl Patagonia
1 patagonia.at Patagonia
0 patagonia.travel Patagonia
0 patagonia.no Patagonia
company_name is identical on every row, so it cannot separate them. email_count can: it is the number of addresses indexed for that domain, and it spans 1,364 down to 0. The rows came back in a different order from this table, so sort on email_count yourself. Starting from the domain and fanning out is the same order target company URL analysis uses, in four calls.
The other free call resolves instead of listing
hunterio/discover with organization: {name: ["Patagonia"]} is also free. It returned meta.results: 1: patagonia.com, with emails_count of 1,278 personal, 86 generic and 1,364 in total. The response metadata showed what it did, because meta.filters came back as {organization: {domain: ["patagonia.com"]}}. It had rewritten the name filter into a domain filter before running the query.
Two free calls on one provider, two opposite behaviours: one hands you the ambiguity, the other resolves it quietly.
How do you get the full company record from a name?
Take the domain from step 1 and call the company endpoint, which returns the profile a directory page would show you, as JSON.
Step 2. Read the record
What it does. Turns the chosen domain into the firmographic record.
The endpoint. hunterio/companies/find takes domain. It costs $0.0049 a call; a 404 costs nothing and an empty 200 record is billed (Verified 2026-10-16).
monid run -p hunterio -e /companies/find --query '{"domain": "patagonia.com"}'
What comes back. For patagonia.com, on 2026-10-16:
- Identity:
name,legalName,domain,domainAliases(empty here),description,tags(14 for this company),foundedYear1973,typeprivate. - Where:
locationand ageoblock for Ventura, California, with city, postal code, country code and coordinates, plustimeZone. - What it does: a
categoryblock with sector (Consumer Discretionary), industry group (Retailing), and the GICS code 25504040, SIC code 53 and NAICS code 44 side by side. - How big:
metricswithemployeesCount3849, anemployeesband of "1K-5K" and atrafficRankof "very_high". - How to reach it: a
phoneand asiteobject listing public phone numbers and the role addresses found on the site. - What it runs on: a
techarray of 18 detected products, such as Shopify, Salesforce Commerce Cloud and Klaviyo, and 12techCategories(for the evidence behind each detection, see the technographic data API). - Links and ownership: a LinkedIn handle,
fundingRounds(empty for this company), andparentandultimateParentpointers (both null here).
For Patagonia, a private company, ticker, the Twitter, Facebook and Instagram handles, marketCap, raised and the revenue fields were null.
That is a directory profile as JSON for one call.
Step 3. Add the outside view, optional
The endpoint. The Trustpilot company search takes query and limit, and costs $0.03 a call (Verified 2026-10-16).
What comes back. Reputation instead of firmographics: trust_score, stars, review_count, categories and a separate row for every domain the brand operates.
Or hand the whole job to an agent
Give this to your agent![]()
Set up https://monid.ai/SKILL.md, and then use Monid to for each company name in this list, find the candidate domains for free, pick the one with the most known email addresses, then pull the full company record and tell me employee count, founded year and detected tech.Or loop it yourself. Put one name per line in names.txt, then run the free step for the whole list:
mkdir -p out
while read -r name; do
monid run -p hunterio -e /domain-finder \
--query "{\"company\":\"$name\",\"limit\":10}" > "out/$(echo "$name" | tr ' ' '_').json"
done < names.txt
Each name writes one file of candidates. Sort on email_count, take the top domain, and call /companies/find only for those: one paid call per company.
📖 See also Automate LinkedIn Company Data Pulls Into a Table
Can you scrape a company directory yourself with Python?
Yes, with requests, BeautifulSoup or Playwright, and it works until the page changes. A scraper you write is yours to keep alive (Python web scraping without maintaining a scraper draws the line between the two jobs): when the markup or the blocking changes, your job breaks, and your list of companies is only as fresh as your last successful run.
There is a rules side too: read a directory's terms before you build anything, because what you may do depends on where you operate and how you use the data.
A directory scraper also solves only the second question. You still have to match a name to the right page. Doing it in Python means a search step, a match step, parsing code, retries and a repair every time the layout changes. A call to the company endpoint costs $0.0049 (Verified 2026-10-16). Set against hours of your own time, pick Monid for anything you will run more than once: the collection is maintained for you, the output is typed JSON instead of HTML you parse, and the name-to-domain step is free.
What goes wrong when you search companies by name?
Four things hide until you run more than one name, all from the Patagonia run on 2026-10-16.
Why did one name return ten companies?
Because ten websites are called Patagonia, and a name search is obliged to return all of them. The free call above gave ten rows with the same company_name. A domain with 1,364 indexed addresses is an organisation of a certain size, and one with zero is a parked domain or a very small shop. The count alone picks the right Patagonia out of ten.
const best = rows.sort((a, b) => b.email_count - a.email_count)[0];
Did perfect_match narrow it to one?
No. We ran domain-finder with perfect_match: true and limit: 10, and it returned the same ten rows with the same counts. For this name, perfect_match did not filter, so do not rely on it to give you one answer. Sort on email_count or use /discover, which resolved to one row.
Which route got the company wrong?
The one built to search by name with relevance scoring. fundable/company/search accepts exactly one of name, domain, linkedin or crunchbase, costs $0.01 a call (Verified 2026-10-16), and we gave it name: "Patagonia":
total_count: 2
relevance_score 45 Patagon AI patagon.ai
relevance_score 41 Quantagonia quantagonia.com
Patagon AI builds sales automation software for Latin America. Quantagonia sells optimisation and quantum software. Neither is Patagonia, the outdoor clothing company the free endpoint found in 1.6 seconds.
A fuzzy matcher scores string similarity against whatever is in its own index. If that index is built around funded technology companies, the closest strings to "Patagonia" are "Patagon AI" and "Quantagonia", and the scorer is working correctly on the wrong population. The scores were low, 45 and 41: a pipeline that reads them knows it has a guess.
Read the score, not the position. Check the population before the endpoint. Resolution quality is a property of the index, not of the API. Cross-check on a free endpoint. One free call returned patagonia.com with 1,364 addresses while the paid route was scoring 45 on a different company.
Why does one brand appear twice on a review index?
trustpilot/search_companies returned 20 of 30 matches for the same name, on 2 pages. The brand appears twice under two domains with two reputations: www.patagonia.com at 1.8 with 563 reviews, and eu.patagonia.com at 2.8 with 78. The top row also lists "Travel Agency" among its categories, the region leaking into the brand's record. Group by organisation across domains before you score a company on reputation.
Which endpoint should I use for which job?
| Endpoint | What it does | Input | Output | Best for | Billing |
|---|---|---|---|---|---|
hunterio/domain-finder | Name to candidate domains | company, limit, perfect_match | Up to 10 domains with email_count | Disambiguating a name first | Free |
hunterio/discover | Structured company search | organization, similar_to, filters | Matching companies with email counts | Filtered discovery, resolves silently | Free |
hunterio/companies/find | Domain to full record | domain | Codes, metrics, tech, parent pointers | The directory profile itself | Per call |
fundable/company/search | Fuzzy name search with scoring | Exactly one of name, domain, linkedin, crunchbase | Scored candidates | Lookup by LinkedIn or Crunchbase URL | Per call |
trustpilot/search_companies | Companies on a review index | query, limit, page | Trust score, stars, review count, categories | The outside view | Per call |
The five rows were inspected and run on 2026-10-16. The first two are free, and in this run they were also the two that got the company right. Current prices live on monid.ai/tools.
When is another route a better fit?
A person is doing the looking. Somebody checking one supplier before a call wants a page, not a JSON body.
You need small local businesses. Directories can carry small and private companies that enrichment providers built around technology buyers do not, and no choice of API fixes a missing row.
You want the legal entity, not the company. Registered name, filing status, officers and registered agent come from state registries, not from these endpoints. That job is the business entity search, and it is a different index again.
The volume is one. Below a few lookups a week, a search box beats writing any integration.
And the disclosure: this is Monid's blog and we resell the five endpoints measured here. The central finding is that the two free ones did the disambiguation better than the paid fuzzy search, which is a recommendation to check the cheap call first.
Conclusion
The quickest way to run a Buzzfile-style search by name from code is two calls through Monid: a free call that turns the name into candidate domains, then $0.0049 for the full record (Verified 2026-10-16), on one key that also covers every other tool, ready inside your agent whenever you need it. A hundred names, resolved and enriched, is about $0.49.
Two things matter more than the provider. Resolve the name before you buy the record, on a free endpoint, because email_count spanning 1,364 to 0 sorted ten identical names without a second request. And read the relevance score on anything fuzzy: 45 out of 100 is the endpoint telling you it is guessing.
How we estimated the time saved: building and maintaining your own name-to-domain matcher, a company-record source and a reputation lookup is roughly 5 to 10 hours each for finding a source, handling same-name results and keeping it running. That is 15 to 30 hours. The 1 minute is the install, key and first call once you already have a Monid key.
Free next step: run monid run -p hunterio -e /domain-finder on a name you already know the answer to, and count how many companies share it. The call costs nothing and the count is usually higher than you expect. Start at monid.ai.
FAQ
Is there a free alternative to a Buzzfile search by name?
For the resolution half, yes. Two endpoints are free per call: one returns every domain matching a name with a count of indexed addresses on each, the other runs a structured company search with filters. Between them you can turn a name into the right domain and size it, at no cost. What is paid is the record itself, at $0.0049 a call (Verified 2026-10-16), and that is the part with the data in it.
What is the difference between name to domain and name to record?
Name to domain is disambiguation: which of the companies carrying this name do you mean, expressed as a website. Name to record is retrieval: given that you know which one, what is it. Disambiguation fails silently by returning a confident wrong company, which is what the fuzzy search did here. Retrieval fails loudly: a miss on the record endpoint is a 404 that costs nothing. Always do them in that order.
Can you look up a whole list of companies by name and export it?
Yes. Loop the free name-to-domain call over your list, keep the top domain per name by email_count, call the record endpoint once per domain, and write the fields you need to a CSV, or ask your agent to do it in the same prompt.
Why would a company search miss a famous company?
Because it searches its own index, not the world. A matcher built around funded technology companies scored "Patagon AI" at 45 and "Quantagonia" at 41 for the query Patagonia, and never returned the clothing company. Read the relevance score rather than the ordering, and cross-check against a free endpoint that resolves by domain.
Why does one brand have two entries on a review index?
Because a review platform can list each domain a brand operates separately. The same brand appeared as www.patagonia.com with 563 reviews at 1.8 and as eu.patagonia.com with 78 reviews at 2.8 on the same query. If you score companies on reputation, group by organisation across domains first, and treat a score attached to one hostname as one market's view.
Published September 2026.


