# Secretary of State Business Entity Search - KYB, 50 + DC (`clearpath/us-business-entity-search`) Actor

KYB company lookup across the official business registries of all 50 states and DC. Returns the full entity record, not the search-result row: status, type, formation date, registered agent, officers with addresses, filing and name history, and UCC liens where published.

- **URL**: https://apify.com/clearpath/us-business-entity-search.md
- **Developed by:** [ClearPath](https://apify.com/clearpath) (community)
- **Categories:** Business, Lead generation, Developer tools
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.99 / 1,000 business record, listing levels

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

[![All 50 states. Plus DC. Officer addresses. Filing history. Former names.](https://api.apify.com/v2/key-value-stores/pJ7iaZsTFhR3k9tjV/records/us-business-entity-search-readme-hero-v5.png)](https://console.apify.com/actors/eBWg2hsheVt3iAUeQ/input)

From **Clearpath**, creators of [Email Finder & Verifier](https://apify.com/clearpath/email-finder-api) and [Shopify Store Leads](https://apify.com/clearpath/shopify-store-leads). Find the business, understand its records, then build your contact list.

### Why choose this actor?

- **All 50 states, plus DC.** Search selected states or look for a company nationwide. Registered agents are available in **36 jurisdictions**, and principal or mailing addresses in **33**. Each run includes a coverage record showing what is available by state.
- **People, addresses and the company’s history.** Get officers and governing persons in **19 jurisdictions**, filing histories in **15**, and former names in **12**. Officer addresses, registered-agent contacts and scanned filings add detail where the register publishes them.
- **Detailed records for your results.** With detail enrichment enabled, the actor requests the available detail for each returned business. Set your result limit to match your research; field availability still depends on the state and source response.

<a href="https://console.apify.com/actors/eBWg2hsheVt3iAUeQ/input"><img src="https://api.apify.com/v2/key-value-stores/pJ7iaZsTFhR3k9tjV/records/us-business-entity-search-readme-cta-v1.svg" width="250" height="48" alt="Look up a company"></a>

### Quick start

Start with one company in Washington, with detail enrichment enabled.

```json
{
  "companyName": "Starbucks Corporation",
  "states": ["WA"],
  "matchMode": "exact",
  "maxResultsPerState": 3,
  "includeDetails": true
}
```

[Open actor input](https://console.apify.com/actors/eBWg2hsheVt3iAUeQ/input) to choose states or enter more company names. Leave `states` empty to search all 50 states plus DC. Export JSON, CSV or Excel; JSON preserves nested officers, addresses and filing histories.

Full records cost **$0.005 each**. For listing-level results, set `includeDetails` to `false`: **$0.002 per record**. A start fee also applies; see Pricing below. Maryland’s additional detail requires `marylandFullDetail`.

<table>
<tr><td colspan="3" style="padding:10px 12px;background:#0F3D91;border:none"><strong style="color:#FFFFFF;font-size:14px">Clearpath · Business Data</strong></td></tr>
<tr>
<td style="padding:10px 12px;background:#D8E4FF;border:1px solid #CBD8EF;vertical-align:top;width:33%"><span style="white-space:nowrap"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-eBWg2hsheVt3iAUeQ-X5m72jNYMX-icon.png" width="20" height="20" style="vertical-align:middle">&nbsp; <a href="https://console.apify.com/actors/eBWg2hsheVt3iAUeQ/input" style="color:#173660;font-size:13px;font-weight:700;text-decoration:none">Business Records</a></span><br><span style="white-space:nowrap;color:#334766;font-size:12px">You are here</span></td>
<td style="padding:10px 12px;background:#EAF0FF;border:1px solid #CBD8EF;vertical-align:top;width:33%"><span style="white-space:nowrap"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-eWT8czb4kT3gH1OWt-TbfGFya2hE-dfdsfdsfdsd.png" width="20" height="20" style="vertical-align:middle">&nbsp; <a href="https://apify.com/clearpath/email-finder-api" style="color:#173660;font-size:13px;font-weight:700;text-decoration:none">Email Finder</a></span><br><span style="white-space:nowrap;color:#334766;font-size:12px">Find & verify emails</span></td>
<td style="padding:10px 12px;background:#EAF0FF;border:1px solid #CBD8EF;vertical-align:top;width:33%"><span style="white-space:nowrap"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/DSvMCAwsufMyZeLyt-actor-R9SL2PPdhdhLQwdck-tbaq4J8sxX-shopy-by-shopify-scraper-logo.jpg" width="20" height="20" style="vertical-align:middle">&nbsp; <a href="https://apify.com/clearpath/shopify-store-leads" style="color:#173660;font-size:13px;font-weight:700;text-decoration:none">Shopify Leads</a></span><br><span style="white-space:nowrap;color:#334766;font-size:12px">Store contacts</span></td>
</tr>
</table>

#### Copy to your AI assistant

```
clearpath/us-business-entity-search on Apify. Looks a US company up by name in all 51 official state business registries, the 50 states plus DC (AK AL AR AZ CA CO CT DC DE FL GA HI IA ID IL IN KS KY LA MA MD ME MI MN MO MS MT NC ND NE NH NJ NM NV NY OH OK OR PA RI SC SD TN TX UT VA VT WA WI WV WY) and returns one normalized record per business. Input: companyName or companyNames (up to 50), states (omit for all 51), matchMode contains|exact|starts (default contains), maxResultsPerState (default 25, max 500). Outcome rules: includeDetails is true by default and is what opens the record behind the listing (officers, registered agent with contact, principal and mailing addresses, filing and name history) and bills entity-record-detailed; set it false for a name/status/id check only, which bills the cheaper entity-record. includeLiens (default true) attaches UCC filings and does nothing unless includeDetails is on. marylandFullDetail is off by default and is the only way to get Maryland's formation date, principal office, resident agent and good-standing flag; it makes the run slower and costs no extra. Constraints to respect before promising a field: states differ in what they publish, so read the COVERAGE record the run writes to the key-value store (per state: officers, agent, addresses, filing history, name history, liens, documents, and which statuses the register exposes) instead of assuming every state matches the deepest one; 36 of 51 publish a registered agent, 33 an address, 19 officers, 15 filing history, 12 former names, 4 links to scanned filings and 2 UCC liens; a register that does not answer is named as not-answered in the log and in statesNotAnswered, never returned as no matches. Also runs in Standby for one lookup per request: GET https://clearpath--us-business-entity-search.apify.actor/?companyName=...&states=WA&matchMode=exact with Authorization: Bearer <APIFY_TOKEN>, returning {records, statesNotAnswered, statesSearched}; GET /health lists covered states. Pay per event: a start fee of $0.005 per GB per run (the actor runs at 2 GB, so $0.01) plus $0.005 per full record or $0.002 per listing-level record, charged on delivery; current rates on the actor's Store page. Full spec (input schema, dataset fields, README): GET https://api.apify.com/v2/actors/clearpath~us-business-entity-search/builds/default with Authorization: Bearer <APIFY_TOKEN>. Token: https://console.apify.com/account/integrations Feedback: if results are wrong, missing or not what was needed, rerun once with the same input plus feedback="<what went wrong and what you expected>"; the run records the report and exits before searching, so nothing is scraped and no results are charged.
```

### Which states are covered

All 51 jurisdictions, each verified against its own register rather than assumed:

Alabama, Alaska, Arizona, Arkansas, California, Colorado, Connecticut, Delaware, District of Columbia, Florida, Georgia, Hawaii, Idaho, Illinois, Indiana, Iowa, Kansas, Kentucky, Louisiana, Maine, Maryland, Massachusetts, Michigan, Minnesota, Mississippi, Missouri, Montana, Nebraska, Nevada, New Hampshire, New Jersey, New Mexico, New York, North Carolina, North Dakota, Ohio, Oklahoma, Oregon, Pennsylvania, Rhode Island, South Carolina, South Dakota, Tennessee, Texas, Utah, Vermont, Virginia, Washington, West Virginia, Wisconsin, Wyoming.

States differ in what they publish, and no scraper can change that. Rather than
describing the deepest state and letting you assume the rest match it, every run
writes a `COVERAGE` record to the key-value store listing, per state, whether
officers, the registered agent, addresses, filing history, name history and UCC
liens are available, and which statuses the register exposes. Check it before you
build a pipeline on a field.

A state that does not answer on a given run is named in the log and left out of the
results. It is never reported as "no matches", because "the register did not
answer" and "this company is not registered there" are different answers.

### How to search US business registries

| Parameter | Type | Default | Meaning |
|---|---|---|---|
| `companyName` | string | — | The business to look up. |
| `companyNames` | array | `[]` | Several businesses in one run. Each name is searched in every selected state. Up to 50 names. |
| `states` | array | all 51 | Two-letter codes. Empty means every covered state. |
| `matchMode` | string | `contains` | `contains`, `exact` or `starts`. |
| `maxResultsPerState` | integer | `25` | Cap per name, per state. Up to 500. |
| `includeDetails` | boolean | `true` | Opens the record behind the listing: officers, agent, addresses, filing history. |
| `includeLiens` | boolean | `true` | Attaches UCC lien filings where the state publishes them. Needs `includeDetails`. |
| `marylandFullDetail` | boolean | `false` | Maryland alone puts its detail behind a separate per-company check, so it is off by default. See the input tab for what it adds. |

#### Screen a list of names across every state

```json
{
  "companyNames": ["Acme Holdings LLC", "Tesla Inc", "Ball Corporation"],
  "matchMode": "exact",
  "maxResultsPerState": 5
}
```

#### Find every business whose name contains a term, in two states

```json
{
  "companyName": "Evergreen",
  "states": ["WA", "OR"],
  "matchMode": "contains",
  "maxResultsPerState": 100
}
```

### What data you get

One normalized record per business, the same shape in every state. Fields a state
does not publish come back `null` or empty rather than being quietly dropped, and
anything the register publishes that has no home in the normalized schema is kept
in `sourceFields`.

A real Washington record, filing history shortened from 89 entries to 2:

```json
{
  "state": "WA",
  "legalName": "STARBUCKS CORPORATION",
  "entityId": "600 611 109",
  "entityType": "WA PROFIT CORPORATION",
  "status": "Active",
  "standing": null,
  "formationDate": "1985-11-04",
  "jurisdiction": "WASHINGTON",
  "principalAddress": {
    "street": "2401 UTAH AVE S",
    "street2": "MS: S-LA1, SUITE 800",
    "city": "SEATTLE",
    "state": "WA",
    "zip": "98134",
    "country": "UNITED STATES",
    "full": "2401 UTAH AVE S, MS: S-LA1, SUITE 800, SEATTLE, WA, 98134-1435, UNITED STATES"
  },
  "mailingAddress": {
    "street": "PO BOX 34110",
    "city": "SEATTLE",
    "state": "WA",
    "zip": "98124",
    "country": "UNITED STATES",
    "full": "PO BOX 34110, SEATTLE, WA, 98124-1110, UNITED STATES"
  },
  "registeredAgent": {
    "name": "CORPORATION SERVICE COMPANY",
    "type": "E",
    "phone": "8009279800",
    "email": "COMPLIANCEMAIL@CSCGLOBAL.COM"
  },
  "officers": [
    {
      "name": "JOSHUA C. GAUL",
      "title": null,
      "principalType": "GoverningPerson"
    },
    {
      "name": "PETR (PETER) FILIPOVIC",
      "title": null,
      "principalType": "GoverningPerson"
    },
    {
      "name": "BRIAN NICCOL",
      "title": null,
      "principalType": "GoverningPerson"
    }
  ],
  "businessEmail": null,
  "businessPhone": null,
  "annualReportDue": "2026-11-30",
  "filingHistory": [
    {
      "filingNumber": 22859046,
      "type": "ANNUAL REPORT",
      "filedAt": "2025-09-16T13:57:04",
      "effectiveDate": "2025-09-16T00:00:00",
      "authorizer": "JOSHUA C GAUL",
      "authorizerTitle": "SECRETARAY",
      "source": "ONLINE"
    },
    {
      "filingNumber": 21206142,
      "type": "ANNUAL REPORT",
      "filedAt": "2024-11-15T15:05:18",
      "effectiveDate": "2024-11-15T00:00:00",
      "authorizer": "JOANIE KIM",
      "authorizerTitle": "ASSISTANT SECRETARY",
      "source": "ONLINE"
    }
  ],
  "nameHistory": [],
  "uccFilings": [],
  "flags": {},
  "source": "Washington Secretary of State (Corporations and Charities Filing System)",
  "sourceUrl": "https://ccfs.sos.wa.gov/",
  "retrievedAt": "2026-09-25T09:05:11+00:00",
  "sourceFields": {},
  "businessId": 950063,
  "dbaName": null,
  "feinOnFile": null,
  "naicsDescription": "Food & Beverages",
  "dissolvedDate": null,
  "expirationDate": null,
  "query": "Starbucks Corporation"
}
```

`authorizerTitle` reads `SECRETARAY` because that is how the filing is spelled in
the register. Values are normalized in shape, not silently corrected in content.

#### UCC liens

Where a state publishes its UCC register, matching filings are attached to the
company record. A real Colorado record, liens shortened from 8 entries to 1:

```json
{
  "state": "CO",
  "legalName": "BALL CORPORATION",
  "entityId": "19871044097",
  "entityType": "FPC",
  "status": "Good Standing",
  "standing": null,
  "formationDate": "1956-01-09",
  "jurisdiction": "IN",
  "principalAddress": {
    "street": "9200 W. 108th Circle",
    "city": "Westminster",
    "state": "CO",
    "zip": "80021",
    "country": "US",
    "full": "9200 W. 108th Circle, Westminster, CO, 80021"
  },
  "mailingAddress": {
    "street": "PO BOX 6251",
    "city": "Broomfield",
    "state": "CO",
    "zip": "80021",
    "country": "US",
    "full": "PO BOX 6251, Broomfield, CO, 80021"
  },
  "registeredAgent": {
    "name": "C T CORPORATION SYSTEM",
    "type": null,
    "phone": null,
    "email": null,
    "address": {
      "street": "7700 E Arapahoe Rd Ste 220",
      "city": "Centennial",
      "state": "CO",
      "zip": "80112",
      "country": "US",
      "full": "7700 E Arapahoe Rd Ste 220, Centennial, CO, 80112"
    }
  },
  "officers": [],
  "businessEmail": null,
  "businessPhone": null,
  "annualReportDue": null,
  "filingHistory": [],
  "nameHistory": [],
  "uccFilings": [
    {
      "filingNumber": "273841",
      "status": "active",
      "filingType": "ucc",
      "documentType": "UCC financing statement",
      "filedDate": "2005-08-09",
      "terminated": false,
      "continuation": false,
      "debtorName": "BALL CORPORATION",
      "debtorAddress": {
        "street": "10 LONGS PEAK DR",
        "city": "BROOMFIELD",
        "state": "CO",
        "zip": "80021",
        "country": "United States",
        "full": "10 LONGS PEAK DR, BROOMFIELD, CO, 80021"
      },
      "securedParty": "KEY EQUIPMENT FINANCE INC.",
      "securedParties": [
        {
          "name": "KEY EQUIPMENT FINANCE INC.",
          "address": {
            "street": "600 TRAVIS ST 14TH FL",
            "city": "HOUSTON",
            "state": "TX",
            "zip": "77002",
            "country": "United States",
            "full": "600 TRAVIS ST 14TH FL, HOUSTON, TX, 77002"
          },
          "assignor": "0"
        }
      ],
      "collateral": []
    }
  ],
  "flags": {},
  "source": "Colorado Secretary of State (Business Entities)",
  "sourceUrl": "https://www.coloradosos.gov/biz/BusinessEntityCriteriaExt.do",
  "retrievedAt": "2026-09-25T09:05:13+00:00",
  "sourceFields": {},
  "statusNote": null,
  "query": "Ball Corporation"
}
```

A company's entry in a state's business register and its entry in that state's UCC
register are separate systems, and the same company is punctuated differently in
each. Liens are joined on a normalized legal name, not on raw text and not on a
loose substring, because a substring match attributes another company's debt to
yours.

### Single lookups over HTTP

The actor also runs in Standby, answering one lookup per request instead of per run.
Same search, same records, same billing.

```bash
curl "https://clearpath--us-business-entity-search.apify.actor/?companyName=Starbucks%20Corporation&states=WA&matchMode=exact" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN"
```

| Query parameter | Meaning |
|---|---|
| `companyName` | The business to look up. |
| `companyNames` | Comma-separated list, as an alternative to `companyName`. |
| `states` | Comma-separated codes. Omit for every covered state. |
| `matchMode` | `contains`, `exact` or `starts`. |
| `maxResultsPerState` | Cap per name, per state. |
| `includeDetails`, `includeLiens`, `marylandFullDetail` | `true`/`false`, as in a run. |

Response:

```json
{
  "records": [
    {
      "state": "CO",
      "legalName": "BALL CORPORATION",
      "entityId": "19871044097",
      "entityType": "FPC",
      "status": "Good Standing",
      "standing": null,
      "formationDate": "1956-01-09",
      "jurisdiction": "IN",
      "principalAddress": {
        "street": "9200 W. 108th Circle",
        "city": "Westminster",
        "state": "CO",
        "zip": "80021",
        "country": "US",
        "full": "9200 W. 108th Circle, Westminster, CO, 80021"
      },
      "mailingAddress": {
        "street": "PO BOX 6251",
        "city": "Broomfield",
        "state": "CO",
        "zip": "80021",
        "country": "US",
        "full": "PO BOX 6251, Broomfield, CO, 80021"
      },
      "registeredAgent": {
        "name": "C T CORPORATION SYSTEM",
        "type": null,
        "phone": null,
        "email": null,
        "address": {
          "street": "7700 E Arapahoe Rd Ste 220",
          "city": "Centennial",
          "state": "CO",
          "zip": "80112",
          "country": "US",
          "full": "7700 E Arapahoe Rd Ste 220, Centennial, CO, 80112"
        }
      },
      "officers": [],
      "businessEmail": null,
      "businessPhone": null,
      "annualReportDue": null,
      "filingHistory": [],
      "nameHistory": [],
      "uccFilings": [],
      "flags": {},
      "source": "Colorado Secretary of State (Business Entities)",
      "sourceUrl": "https://www.coloradosos.gov/biz/BusinessEntityCriteriaExt.do",
      "retrievedAt": "2026-09-25T09:05:14+00:00",
      "sourceFields": {},
      "statusNote": null,
      "query": "Ball Corporation"
    }
  ],
  "statesNotAnswered": [],
  "statesSearched": [
    "CO"
  ]
}
```

That is the whole envelope: `records` holds the same objects a run writes to the dataset (this one asked for `includeDetails=false`, so no officers or filing history were fetched). `statesNotAnswered`
names any register that did not respond, so a short result is never mistaken for a
clean "not registered". `GET /health` returns the covered state list without
running a search.

| Status | Meaning |
|---|---|
| 200 | Lookup completed. Check `statesNotAnswered`. |
| 400 | The request needs changing; the message says what. |
| 502 | The lookup could not be completed. Retry. |
| 504 | The lookup took too long. Search fewer states. |

Fewer states per request means a faster response. Standby has a cold start on the
first request after an idle period.

### Pricing

Pay per event. Records are charged on delivery, so a search that matches nothing
costs nothing beyond the start fee.

| Event | When charged | Price |
|---|---|---|
| `apify-actor-start` | Once per run, per GB of memory | $0.005 |
| `entity-record-detailed` | Per record returned with `includeDetails` on | $0.005 |
| `entity-record` | Per record returned with `includeDetails` off | $0.002 |

The actor runs at 2 GB, so a run starts at **$0.01** and adds $0.005 for each full
record. Looking one company up across every covered state typically returns a
handful of records rather than 51, because most companies are registered in a few
states: that is $0.01 plus about $0.02, so roughly **$0.03 a company**. A 50-name
batch in one run pays the start fee once.

Standby requests are billed the same way, per record returned. The Maryland detail
option costs nothing extra; it is absorbed in the per-record price.

### FAQ

**Is this data public?** Yes. State business registers are public records, published
by each Secretary of State (or equivalent office) so that anyone can look a company
up. This actor reads what those offices publish.

**Is every US jurisdiction covered?** Yes: all 50 states plus the District of
Columbia, each verified end to end against its own register rather than assumed. A
coverage number nobody can check is worth nothing, so the `COVERAGE` record every run
writes states per state exactly which fields that register publishes.

**Why does a state return fewer fields than another?** Because it publishes fewer.
New York's register, for example, publishes a service-of-process address and no
registered agent. The `COVERAGE` record states this per state.

**Can I search by officer or registered agent instead of company name?** Not in this
actor. Name search is the one query every register supports; agent and officer search
exist in only a minority of them.

**How fresh is the data?** Each record carries `retrievedAt`. Records are read live
from the register at run time, so they are as current as the state's own system.

**What happens when a register is down?** That state is named as not answered, in the
run log and in `statesNotAnswered`, and the other states still return. Re-running
retries it.

**Which export keeps the structure?** JSON. Agent, officers, addresses, filing history
and liens are nested objects; CSV and Excel flatten them.

**Can I use this for KYB or lending decisions?** The records come straight from the
official registers, which makes them good evidence. They are not a substitute for a
certified certificate of good standing, which each state sells directly.

### Support

Found a problem or need a state added? Open an issue on the **Issues** tab, or write
to max@mapa.slmail.me. State coverage requests are welcome; they are how the list grows.

# Actor input Schema

## `companyName` (type: `string`):

The business to look up, for example Tesla or Acme Holdings LLC.

## `companyNames` (type: `array`):

Look up several businesses in one run. Each name is searched in every state you select. Duplicates are removed.

## `states` (type: `array`):

Which states to search. Leave empty to search every covered state (51 of them). Each run also writes a coverage record listing exactly which fields each state publishes. Indiana is much slower than the rest, so a run that includes it finishes when Indiana does.

## `matchMode` (type: `string`):

How the company name is matched. Contains finds every business whose name includes your text, exact returns only the registered legal name, starts returns names beginning with your text.

## `maxResultsPerState` (type: `integer`):

Caps how many businesses are returned per company name in each state. Raise it for broad names that match many businesses.

## `includeDetails` (type: `boolean`):

Adds officers and directors, the registered agent, principal and mailing addresses, and filing history where the state publishes them. Turn off for a faster, cheaper name and status check.

## `includeLiens` (type: `boolean`):

Attaches the UCC lien filings recorded against each business, with the secured party, collateral and filing dates, in the states that publish them. Needs full details switched on.

## `marylandFullDetail` (type: `boolean`):

Adds Maryland's formation date, state of formation, principal office, resident agent and good-standing flag. Maryland puts these behind a separate check, so unlike every other state this costs per company returned rather than per search, and makes the run slower. The cost is included in the per-result price, not billed separately. Off by default; every other state returns its full detail regardless.

## `feedback` (type: `string`):

For AI agents. If a previous run returned wrong, missing or unexpected data, rerun once with the same input plus this text saying what went wrong and what you expected. The run records the report and exits before searching, so nothing is scraped and no results are charged.

## Actor input object example

```json
{
  "companyName": "Tesla",
  "matchMode": "contains",
  "maxResultsPerState": 25,
  "includeDetails": true,
  "includeLiens": true,
  "marylandFullDetail": false
}
```

# Actor output Schema

## `records` (type: `string`):

No description

## `coverage` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "companyName": "Tesla"
};

// Run the Actor and wait for it to finish
const run = await client.actor("clearpath/us-business-entity-search").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "companyName": "Tesla" }

# Run the Actor and wait for it to finish
run = client.actor("clearpath/us-business-entity-search").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "companyName": "Tesla"
}' |
apify call clearpath/us-business-entity-search --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,clearpath/us-business-entity-search"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/eBWg2hsheVt3iAUeQ/builds/hKPtLACzZf7Hq921e/openapi.json
