---
title: "Entity search company list: one AI task per company."
description: "Use entity search to seed a company list, confirm each identity, then research each company in one bounded AI task. Keep sources and receipts per company."
canonical: "https://scalewithsearch.com/articles/entity-search-company-research-list"
date: "2026-10-03"
modified: "2026-10-09"
---
## Site navigation

- [Scale With Search](https://scalewithsearch.com/)
- Real estate
  - Real estate
    - [Real estate](https://scalewithsearch.com/for/real-estate)
- Work
  - Start here
    - [Send your brief](https://scalewithsearch.com/work#send-your-brief)
    - [Prepare your six-question brief](https://scalewithsearch.com/work#prepare-your-six-question-brief)
  - Build
    - [Site build, content library with SEO, signal desk](https://scalewithsearch.com/work)
- For your business
  - Trades and home services
    - [Auto body and collision shops](https://scalewithsearch.com/for/auto-body-and-collision-shops)
    - [Foundation and home repair contractors](https://scalewithsearch.com/for/foundation-and-home-repair)
    - [Garage door and fencing contractors](https://scalewithsearch.com/for/garage-door-and-fencing-contractors)
    - [HVAC contractors](https://scalewithsearch.com/for/hvac-contractors)
    - [Janitorial and commercial cleaning companies](https://scalewithsearch.com/for/janitorial-and-commercial-cleaning)
    - [Locksmiths](https://scalewithsearch.com/for/locksmiths)
    - [Moving companies](https://scalewithsearch.com/for/moving-companies)
    - [Pest control companies](https://scalewithsearch.com/for/pest-control-companies)
    - [Plumbing and electrical contractors](https://scalewithsearch.com/for/plumbing-and-electrical-contractors)
    - [Restoration and water or fire damage companies](https://scalewithsearch.com/for/restoration-and-water-fire-damage)
    - [Roofing companies](https://scalewithsearch.com/for/roofing-companies)
    - [Towing companies](https://scalewithsearch.com/for/towing-companies)
    - [Tree services and landscaping companies](https://scalewithsearch.com/for/tree-services-and-landscaping)
    - [Solar installers](https://scalewithsearch.com/for/solar-installation)
    - [General contractors](https://scalewithsearch.com/for/general-contractors-and-construction)
    - [Paving, concrete, and flooring contractors](https://scalewithsearch.com/for/paving)
  - Practices and professional services
    - [Bookkeeping and tax practices](https://scalewithsearch.com/for/bookkeeping-and-tax-practices)
    - [Dental practices](https://scalewithsearch.com/for/dental-practices)
    - [Family and criminal defense law firms](https://scalewithsearch.com/for/family-and-criminal-defense-law-firms)
    - [Med spas and aesthetics practices](https://scalewithsearch.com/for/med-spas-and-aesthetics)
    - [Personal injury law firms](https://scalewithsearch.com/for/personal-injury-law-firms)
    - [Veterinary clinics](https://scalewithsearch.com/for/veterinary-clinics)
    - [Gyms and fitness studios](https://scalewithsearch.com/for/fitness)
    - [Therapy and outpatient health practices](https://scalewithsearch.com/for/therapy-and-outpatient-health)
    - [Medical billing companies](https://scalewithsearch.com/for/medical-billing)
    - [Insurance agencies](https://scalewithsearch.com/for/insurance-agencies)
    - [Financial advisors](https://scalewithsearch.com/for/financial-advisors)
    - [Property management companies](https://scalewithsearch.com/for/property-management)
    - [Recruiting and staffing agencies](https://scalewithsearch.com/for/recruiting-and-staffing)
    - [Architects and interior designers](https://scalewithsearch.com/for/architects-and-interior-designers)
    - [Logistics and supply chain companies](https://scalewithsearch.com/for/logistics-and-supply-chain)
  - Agencies, MSPs, and manufacturing
    - [IT and managed service providers](https://scalewithsearch.com/for/it-and-managed-service-providers)
    - [Machine shops and precision manufacturers](https://scalewithsearch.com/for/machine-shops-and-precision-manufacturing)
    - [Marketing agencies and freelancers](https://scalewithsearch.com/for/marketing-agencies-and-freelancers)
    - [SEO agencies and consultants](https://scalewithsearch.com/for/seo-agencies-and-consultants)
    - [Small manufacturers and fabricators](https://scalewithsearch.com/for/small-manufacturers-and-fabricators)
  - Restaurants, shops, studios, and nonprofits
    - [Restaurants and hospitality businesses](https://scalewithsearch.com/for/restaurants-and-hospitality)
    - [Retail stores and ecommerce sellers](https://scalewithsearch.com/for/retail-and-ecommerce)
    - [Photographers, event planners, and travel agents](https://scalewithsearch.com/for/photographers)
    - [Churches and nonprofits](https://scalewithsearch.com/for/churches-and-nonprofits)
  - [All industries](https://scalewithsearch.com/for/)
- Learn
  - For your office
    - [Office job guides](https://scalewithsearch.com/guides/)
    - [Browser calculators](https://scalewithsearch.com/tools/)
  - Start here
    - [How it works](https://scalewithsearch.com/how-it-works)
    - [Free Starter Kit](https://scalewithsearch.com/kit/business-memory-starter-kit.zip)
    - [Synthetic specimen](https://scalewithsearch.com/specimen/working-session-specimen.zip)
  - Guides
    - [The Complete Guide to Business Memory for AI Agents](https://scalewithsearch.com/articles/business-memory-for-ai-agents-guide)
    - [The Complete Small-Business Guide to AI Agent Governance](https://scalewithsearch.com/articles/ai-agent-governance-guide-small-business)
    - [The Complete Guide to Leaving Vendor AI Memory](https://scalewithsearch.com/articles/leaving-vendor-ai-memory-guide)
  - Articles by cluster
    - [Business memory](https://scalewithsearch.com/articles/business-memory-for-ai-agents-guide)
    - [Agent governance](https://scalewithsearch.com/articles/ai-agent-governance-guide-small-business)
    - [Migration and ownership](https://scalewithsearch.com/articles/leaving-vendor-ai-memory-guide)
  - For machines
    - [llms.txt](https://scalewithsearch.com/llms.txt)
    - [llms-full.txt](https://scalewithsearch.com/llms-full.txt)
    - [Machine view](https://scalewithsearch.com/?view=machine)
- Company
  - Evidence
    - [Proof](https://scalewithsearch.com/proof)
  - Company
    - [About](https://scalewithsearch.com/about)

# Seed a Company List from Entity Search, Then Research Each One.

Use entity search to seed a company list, confirm each identity, then give each company one bounded research task. You ask an AI assistant for forty regional distributors. It returns forty names. Six are the same company under two names. Three closed last year. One is a trade association with a similar name.

The research that follows inherits every one of those errors. Each wrong row gets a confident summary.

The fix sits before the research. Seed the list from an entity source. Confirm each identity. Then give the AI one bounded task per company.

> **Quick Summary**
> - **What this covers:** how to seed a company list and research each company in a bounded task.
> - **Who it's for:** operators who use an AI assistant to research prospects, partners, or vendors.
> - **Key takeaway:** confirm identity before research, and keep one brief and one receipt per company.

## Write the list criteria first.

An entity search returns what matches your query. It does not know what you meant. Write the criteria before you search, so you can test each result against them.

A useful criteria block names five things:

- **Entity type.** A company, not a person, product, or association.
- **Industry.** The activity in plain words, such as "commercial roofing contractor."
- **Place.** Country, state, or metro area.
- **Size or stage.** Any limit you can check, such as "has a public website" or "files annual reports."
- **Exclusions.** Competitors, current customers, and anyone on a do-not-contact list.

Keep the criteria in the same file as the list. A reviewer can then check any row against the rule that admitted it.

## Seed the list from an entity search source.

An entity search source returns things with identities, not pages that mention words. Each result carries an identifier you can store and check later.

The [Google Knowledge Graph Search API](https://developers.google.com/knowledge-graph) lets you "find entities in the Google Knowledge Graph". Its results use standard types from schema.org, a shared vocabulary for web data. The [API reference](https://developers.google.com/knowledge-graph/reference/rest/v1) lists a `types` parameter. It "restricts returned entities to those of the specified types". Set it to `Organization` to drop people and places.

Each result carries three useful fields. The `@id` field holds "the canonical URI for the entity". The `url` field holds "the official website URL of the entity, if available". The `resultScore` field shows "how well the entity matched the request constraints".

Read the warning on the same page before you build on it. Google says the API "is not suitable for use as a production-critical service". Google also says it is moving the API to Cloud Enterprise Knowledge Graph. Use it to seed a list, not to run a daily process.

For registered legal entities, the [GLEIF API](https://www.gleif.org/en/lei-data/gleif-api) is a second source. GLEIF says you can "search for LEIs via entity names". An LEI, a Legal Entity Identifier, is a registration code for a legal entity. GLEIF says the API supports "fuzzy" matching of names and addresses. Many small companies have no LEI. Treat a missing LEI as no data, not as a failed check.

Store each seed row with its source and identifier:

```text
seed_name:: Example Roofing Co.
seed_source:: Knowledge Graph Search API
seed_id:: kg:/m/0example
seed_url:: https://exampleroofing.example
matched_criteria:: commercial roofing, Ohio
```

## Remove duplicates and confirm identity.

A seed list is a candidate list. Two rows can be one company. One row can blend two companies with similar names.

Remove duplicates in three passes:

1. **Same identifier.** Two rows with the same `@id` or LEI are one company.
2. **Same official domain.** Two names that resolve to one website are often one company.
3. **Same registration.** Two names under one state registration number are one legal entity.

Then confirm identity for each row that survives. Check at least two independent markers:

- **Official domain.** Open the site and confirm the name, address, and business match the row.
- **Registration.** Look up the company in the state business registry, or by LEI where one exists.
- **Other identifiers.** A Wikidata item can carry an [official website property](https://www.wikidata.org/wiki/Property:P856). Wikidata defines it as the "URL of the official page of an item (current or former)". So a listed URL can be out of date.

Mark each row `identity:: confirmed`, `identity:: unresolved`, or `identity:: excluded`. Only confirmed rows go to research. An unresolved row is a question for a person, not a guess for the assistant.

## Write one task brief per company.

One brief per company keeps each task small enough to check. A brief for "research all forty" produces one long answer nobody can audit.

Each brief names the job, the allowed sources, the output fields, and the stopping rule. For the full pattern, read [how to give each task a job, sources, and a stopping point](/articles/give-every-agent-a-job-sources-and-stopping-point).

```text
company:: Example Roofing Co.
identity:: confirmed (domain + state registration)
job:: fill the output fields below from allowed sources only
allowed_sources::
  - https://exampleroofing.example and its subpages
  - state business registry entry
  - company press releases on the official domain
forbidden_sources::
  - review sites, data brokers, personal social profiles
output_fields::
  - services offered, with source URL
  - service area, with source URL
  - year founded, with source URL
  - open questions
stop_when::
  - every field has a sourced value or "not found"
  - the official site contradicts the registry
  - a field needs a source outside the allowed list
```

The stopping rule matters most. "Not found" is a valid answer. A guessed value with no URL is not.

## Keep a receipt per company.

A receipt is the short record of what the task read, what it produced, and why it stopped. Write one per company, next to the brief.

```text
company:: Example Roofing Co.
brief:: briefs/example-roofing.md
started:: 2026-10-03T10:02-04:00
finished:: 2026-10-03T10:06-04:00
sources_read:: 4 URLs, listed with access times
fields_filled:: 3 of 3 sourced fields; open questions: none
fields_not_found:: 0
stop_reason:: all fields sourced
external_actions:: none
```

The receipt lets you review forty companies without rereading forty transcripts. Sort by `stop_reason`. Read the exceptions first.

## Keep a person on anything that leaves the office.

The research can run in a batch. The next step cannot. An email, a call list, a CRM import, or a shared report leaves the office. A person approves it.

Write that boundary into every brief as `external_actions:: none`. The receipt then shows whether the task held it. A task that drafts an outreach note stops at the draft.

If your company research produces lists nobody trusts, [send your brief](/work#send-your-brief) to get a written scope.

## FAQ

### Can an AI assistant build the company list without an entity search source?

It can suggest names. Without identifiers, you cannot check duplicates or identity, so treat its list as candidates to confirm.

### Is the Google Knowledge Graph Search API safe for a production process?

Google says it is not suitable for production-critical use. Use it to seed a list, and store the identifiers you need.

### What if a company has no LEI?

An LEI is not universal, so a missing LEI proves nothing. Confirm identity with the official domain and the state business registry instead.

### Why one task per company instead of one task for the whole list?

A small task produces output you can check against its sources. One receipt per company shows which rows stopped early and why.

## Key Recap

- Write list criteria before the search, and keep them with the list.
- Seed from an entity search source that returns identifiers, and record each source.
- Remove duplicates by identifier, domain, and registration, then confirm identity with two markers.
- Give each confirmed company one brief with allowed sources, output fields, and a stopping rule.
- Keep one receipt per company, and keep a person on every action that leaves the office.


## Related: Agent Governance

- [When to Fetch the Full Page Instead of the Search Snippet](/articles/full-page-extraction-vs-search-snippets)
- [AI Knowledge Base With Context-Aware Search: What a Small Business Should Test Before Buying](/articles/ai-knowledge-base-context-aware-search)
- [AI Memory for URLs: Store the Page, the Claim, and Why It Matters](/articles/ai-memory-for-urls-bookmarks)

----

```text
                  .|########||.                                       .|########||.                                       .|########||.
               |##||.      .||##|.                                 |##||.      .||##|.                                 |##||.      .||##|.
             |#|.              .|#|.                             |#|.              .|#|.                             |#|.              .|#|.
           |#|                    |#|                          |#|                    |#|                          |#|                    |#|
         .#|                        |#.                      .#|                        |#.                      .#|                        |#.
        .#.                          .#|                    .#.                          .#|                    .#.                          .#|
       |#.                            .#|                  |#.                            .#|                  |#.                            .#|
      |#             ......             #|                |#             ......             #|                |#             ......             #|
     .#           ||#########|           #|              .#           ||#########|           #|              .#           ||#########|           #|
    .#.         |######||######|.        .#.            .#.         |######||######|.        .#.            .#.         |######||######|.        .#.
    #.        .##|###|##|#|######|        .#            #.        .##|###|##|#|######|        .#            #.        .##|###|##|#|######|        .#
   ||        |##|#||||||||||||#||#|        ||          ||        |##|#||||||||||||#||#|        ||          ||        |##|#||||||||||||#||#|        ||
   #        |#||||||||||||||||||||#|        #.         #        |#||||||||||||||||||||#|        #.         #        |#||||||||||||||||||||#|        #.
  ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||
  #       .#||||||||||||||||||||||||#|       #        #       .#||||||||||||||||||||||||#|       #        #       .#||||||||||||||||||||||||#|       #
 ||   ....|||#||||||##|#|||#|#||##||||....|. ||      ||   ....|||#||||||##|#|||#|#||##||||....|. ||      ||   ....|||#||||||##|#|||#|#||##||||....|. ||
 #.  .  ....|#  ....#|||   ||| .#|||  ....#. .#      #.  .  ....|#  ....#|||   ||| .#|||  ....#. .#      #.  .  ....|#  ....#|||   ||| .#|||  ....#. .#
 #   .  ||||#| .#####||  . .#| .#|||  ||||#   #.     #   .  ||||#| .#####||  . .#| .#|||  ||||#   #.     #   .  ||||#| .#####||  . .#| .#|||  ||||#   #.
.|   |||||  #. |#|||||. ||  #. |#||. .|||||   ||    .|   |||||  #. |#|||||. ||  #. |#||. .|||||   ||    .|   |||||  #. |#|||||. ||  #. |#||. .|||||   ||
||   |....  #. ....|#.      |. ...|. ....||   ||    ||   |....  #. ....|#.      |. ...|. ....||   ||    ||   |....  #. ....|#.      |. ...|. ....||   ||
#.  .||||||##||||||##||####|||||||#||||||#|   .#    #.  .||||||##||||||##||####|||||||#||||||#|   .#    #.  .||||||##||||||##||####|||||||#||||||#|   .#
#    .||####|###########################|.     #    #    .||####|###########################|.     #    #    .||####|###########################|.     #
#      .#||||||.#.|| # |. ..# #| #|||||#|      #    #      .#||||||.#.|| # |. ..# #| #|||||#|      #    #      .#||||||.#.|| # |. ..# #| #|||||#|      #
#      .#|||||| ..  |# ## |#| ...#|#|||#|      #    #      .#|||||| ..  |# ## |#| ...#|#|||#|      #    #      .#|||||| ..  |# ## |#| ...#|#|||#|      #
#      .#|||#|# .# .#| #| ##|.#..#|||||#|      #    #      .#|||#|# .# .#| #| ##|.#..#|||||#|      #    #      .#|||#|# .# .#| #| ##|.#..#|||||#|      #
#      .#||||||############|######|||||#|      #    #      .#||||||############|######|||||#|      #    #      .#||||||############|######|||||#|      #
#   |...||#||||||#||||#|#||||||#|||||#||| |.|  #    #   |...||#||||||#||||#|#||||||#|||||#||| |.|  #    #   |...||#||||||#||||#|#||||||#|||||#||| |.|  #
#. .. ||||# .|||##|.  |#| .|| || .|||#. #|  # .#    #. .. ||||# .|||##|.  |#| .|| || .|||#. #|  # .#    #. .. ||||# .|||##|.  |#| .|| || .|||#. #|  # .#
|| |  ...||  ...##| |  #| .|. |. #####  .. .| ||    || |  ...||  ...##| |  #| .|. |. #####  .. .| ||    || |  ...||  ...##| |  #| .|. |. #####  .. .| ||
|| ||||| || ||||#|  .  |. |. |#. ||||| |#| || ||    || ||||| || ||||#|  .  |. |. |#. ||||| |#| || ||    || ||||| || ||||#|  .  |. |. |#. ||||| |#| || ||
.# |.....#|....|#.||||.|||##.|#|....||.#||.#. #.    .# |.....#|....|#.||||.|||##.|#|....||.#||.#. #.    .# |.....#|....|#.||||.|||##.|#|....||.#||.#. #.
 #.|||||||#############################| ||| .#      #.|||||||#############################| ||| .#      #.|||||||#############################| ||| .#
 ||       ##||#||#||||||#||#||#||#||##.      ||      ||       ##||#||#||||||#||#||#||#||##.      ||      ||       ##||#||#||||||#||#||#||#||##.      ||
  #       .#|||||||||#||#|||||||||||#|       #        #       .#|||||||||#||#|||||||||||#|       #        #       .#|||||||||#||#|||||||||||#|       #
  ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||
  .#        |#||||||||||||||||||||#|        #.        .#        |#||||||||||||||||||||#|        #.        .#        |#||||||||||||||||||||#|        #.
   ||        |#||||||||||||||||||#|        ||          ||        |#||||||||||||||||||#|        ||          ||        |#||||||||||||||||||#|        ||
    #.        .######|#|#########|        .#            #.        .######|#|#########|        .#            #.        .######|#|#########|        .#
    .#.         |#####||||#####|         .#.            .#.         |#####||||#####|         .#.            .#.         |#####||||#####|         .#.
     |#           ||########||           #.              |#           ||########||           #.              |#           ||########||           #.
      |#             ......             #|                |#             ......             #|                |#             ......             #|
       |#.                            .#|                  |#.                            .#|                  |#.                            .#|
        |#.                          .#.                    |#.                          .#.                    |#.                          .#.
         .#|                        |#.                      .#|                        |#.                      .#|                        |#.
           |#|                    |#|                          |#|                    |#|                          |#|                    |#|
            .|#|.              .|#|.                            .|#|.              .|#|.                            .|#|.              .|#|.
               |##||.      .||##|                                  |##||.      .||##|                                  |##||.      .||##|
                 .||########||.                                      .||########||.                                      .||########||.

Scale With Search  2026  [scalewithsearch.com](https://scalewithsearch.com)
```
