Delaware Corporations Search — DE Entity Data API

NexGenData · @nexgendata

Delaware Corporations Search is a NexGenData tool that returns one row per Delaware entity from the Delaware Division of Corporations registry with entity name, file number, formation date, entity kind and type, residency, and registered agent name, address and phone.

About

🏛️ Delaware Corporations Search Scraper — Live Delaware Division of Corporations entity-registry lookup

Delaware Corporations Search is a NexGenData tool that returns one row per Delaware entity from the Delaware Division of Corporations registry with entity name, file number, formation date, entity kind and type, residency, and registered agent name, address and phone.

Delaware corporation search and Delaware entity search as an API.

The Delaware Corporations Search Scraper queries the Delaware Division of Corporations' public entity-search system (the canonical registry for Delaware corporations, LLCs, LPs and statutory trusts). Pass entity names and/or Delaware file numbers; receive each matching entity as clean JSON — entity name, file number, formation date, entity kind and type, residency, and registered agent name, address and phone — live from the official source. Useful for KYC, due-diligence, fund formation and confirming that a Delaware entity exists under the name or file number you were given.

What you get

Exact vs starts-with. Delaware's name search returns entities whose names begin with what you type, and it ignores the legal suffix: "Stripe, Inc." brings back STRIPE 5 DELAWARE L.P., STRIPED BASS FOUNDATION and so on. A row is labelled exact only when its registry name equals your name, ignoring case and punctuation and treating Inc./Incorporated, Corp./Corporation and LLC/L.L.C. as the same suffix (INC and LLC are different entities; a name typed without a suffix matches any suffix). Everything else is starts-with. Delaware lists at most 50 entities per name, so for a common name the exact entity may not be among them; then search by file number. With exactOnly: true only exact rows are delivered. Without it, every name on your list is searched first and each name's exact match(es) come at the top, then starts-with rows in list order up to maxEntities.

One record per matching Delaware entity, with exactly these fields:

FieldMeaning
entity_nameRegistered entity name, exactly as spelled in the registry
file_numberDelaware file number (the registry's canonical identifier)
search_queryThe entity name or file number you submitted that produced this record
search_typeentity_name or file_number
match_modeDescribes the row. exact — the registry name is the name you asked for (see below); starts-with — Delaware listed it because it begins with your name; broadened — your name had no Delaware match at all, so the row came from a fallback search (legal suffix stripped, then the most distinctive word). File-number lookups are always exact.
requested_nameThe name you asked for.
requested_name_normalizedYour name with case, punctuation and the suffix normalised (e.g. stripe inc), for filtering.
state_of_formationAlways DE
sourceicis.corp.delaware.gov
incorporation_dateIncorporation / formation date as the registry shows it (3/26/2007)
incorporation_date_isoThe same date as YYYY-MM-DD (2007-03-26), for sorting and filtering
entity_kindCorporation, Limited Liability Company, Limited Partnership, …
entity_typeRegistry entity type (for example General)
residencyDomestic or Foreign
registered_agent_nameRegistered agent of record
registered_agent_addressAgent street address
registered_agent_city, registered_agent_county, registered_agent_state, registered_agent_postal_code, registered_agent_phoneAgent location and phone as listed
detail_statusok — the entity-detail fields above were read from the registry for this row; any other value (skipped_time_budget, transport_…, detail_page_not_recognized, not_requested) means they are null on this row and why

Every row is the registry's search-results line plus the public Entity Details view for that entity (added in 0.0.33). The entity-detail fields are the free, public part of the registry only — the actor does not return entity status, last annual-report year, stock details or tax information (Delaware sells those separately as a paid status report), and a row whose detail view could not be read is still delivered with its detail_status explaining why.

Input

KeyTypeMeaning
entityNamesarray of stringsEntity-name searches. Delaware matches names that begin with your text (punctuation ignored) and returns at most 50 matches per name — narrow the name if you get exactly 50.
fileNumbersarray of stringsDelaware file numbers (digits only, e.g. "4056247"). Exact lookup: one entity or no match.
queriesarray of stringsLegacy alias of entityNames, kept for backward compatibility. Prefer entityNames.
entityName, companyName, query, search, searchTerm, keyword, name (and plurals)string or arrayAlso accepted as aliases of entityNames — a comma-separated string works too. fileNumber / file_numbers alias fileNumbers.
maxEntitiesinteger 1–2000 (default 50)Ceiling on unique entities delivered per run, counted by file number after de-duplication. A ceiling, not a promise: an exact search that matches one entity delivers one record. When the ceiling is reached the run stops early and says so in its status message.
exactOnlyboolean (default false)When Delaware has no entity matching a name exactly, the actor retries with the legal suffix removed and then with the most distinctive word, and delivers those registry rows labelled match_mode: "broadened" at the normal per-record rate — so a search for "Acme Widgets Holdings Inc." that Delaware cannot match still shows you every Delaware entity matching "Acme Widgets Holdings" or "Widgets". Set true for a strict yes/no on the exact name and no broadened rows.

Whitespace is normalized and duplicate searches run once. Order of results follows your input order, then Delaware's result order. At least one valid entity name or file number is required; otherwise the run fails with no records.

Schema stability

New fields may be added over time (they appear as new keys; older runs will not have them). Existing fields are not renamed or removed without a major-version bump. search_type was added in 0.0.22; match_mode and requested_name in 0.0.29; the entity-detail fields (incorporation_date … detail_status) in 0.0.33.

Compliance

  • Reads public, unauthenticated pages of the Delaware Division of Corporations search, the same way a browser does.
  • Requests use the platform's residential proxy for retries, with bounded concurrency.
  • You are responsible for ensuring your downstream use complies with the source's terms and applicable law.
  • No credentials for the target site are collected, stored or transmitted.

About NexGenData


SEO: 🏛️ Delaware Corp Search Scraper — DE Registry Lookup API


Run it on a schedule

This is a lookup tool for names and file numbers you already have, so a weekly run over a fixed watchlist suits most KYC and due-diligence work. Registry records change slowly: between runs you may see a new entity appear under a name you search (names match by prefix), or a change in the registered agent details on an existing entity. Daily runs are supported if you need to catch new entities under a name sooner. The actor removes duplicates within a run but has no new-only mode, so de-duplicate across runs downstream on file_number. Send each run's results onward with a webhook, Google Sheets, Zapier, Make or the Bytewells API.

FAQ

Why use this instead of the official Delaware Division of Corporations search?

The Delaware site is free but built for one search at a time in a browser. This actor runs many names and file numbers in one go, reads the public Entity Details view for each match, and returns everything as flat JSON, CSV or Excel. It retries blocked searches, removes duplicates, and fails with zero rows rather than handing you a silently incomplete dataset. It needs no login or API key.

What does a typical run cost?

One flat monthly price, with a free trial; there is no per-row charge. Bytewells bills compute separately from your prepaid credit, by memory and run time.

How do I check whether a Delaware company exists?

Put the name in entityNames or the Delaware file number in fileNumbers. A file-number lookup returns one entity or no match. A name search returns entities whose names begin with your text, up to 50 per name. Set exactOnly to true if you want a strict yes or no on the exact name, with no broadened fallback rows.

Does it return entity status or annual report details?

No. It returns the free public part of the registry: entity name, file number, incorporation date, entity kind and type, residency, and registered agent name, address and phone. Delaware sells entity status, last annual-report year, stock and tax details separately as a paid status report, and the actor does not return those.

Can I get a list of newly formed Delaware companies?

Not directly. The actor looks up names and file numbers you supply. It does not browse the registry by formation date. Each row does include incorporation_date_iso, so you can sort or filter the entities your searches return.

What does "broadened" mean in the results?

When Delaware has no exact match for a name, the actor retries with the legal suffix removed and then with the most distinctive word, and labels those rows match_mode: "broadened". Rows from your search as typed are labelled exact. Each broadened row also carries contains_all_words (true when the registry name has every word of the name you asked for), so you can filter loose matches yourself.

How it is billed on Bytewells

One flat monthly price for this actor, with a free trial to start. There is no charge per row, per result or per run from us.

Compute is billed separately by Bytewells from your prepaid credit, by memory and run time (per second). If a run uses the platform's proxy, Bytewells adds that traffic to the same run's compute bill.

Run it from the API

Bytewells speaks the same API as Apify, so curl or apify-client work with the Bytewells address and your Bytewells API key.

curl -X POST "https://bytewells.com/api/v2/acts/nexgendata~delaware-corporations-search-scraper/runs" \
  -H "Authorization: Bearer YOUR_BYTEWELLS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"entityNames": ["Stripe"], "maxEntities": 5}'

# when the run has finished, read its rows:
curl -H "Authorization: Bearer YOUR_BYTEWELLS_API_KEY" \
  "https://bytewells.com/api/v2/actor-runs/RUN_ID/dataset/items"
from apify_client import ApifyClient

client = ApifyClient("YOUR_BYTEWELLS_API_KEY", api_url="https://bytewells.com/api")
run = client.actor("nexgendata/delaware-corporations-search-scraper").call(run_input={'entityNames': ['Stripe'], 'maxEntities': 5})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(row)

Contact

Questions, a source that changed, or a field you need: [email protected]

More Actors from the same publisher.

View all from @nexgendata