Account team are very responsive and data is very helpful. We've been dealing with Bolddata for a few years and have found them to be a very efficient team who are able to quickly provide good data.
Company Enrichment API: complete your business data
Send a domain, a company name or a registration number and get the full record back from the official trade register: identity, address, industry codes, size, financials, group structure and contacts. One call per record, or the whole CRM on a schedule.
What is a company enrichment API?
A company enrichment API takes a record you already have, with gaps in it, and fills the gaps from a trusted source. You send what you know about the company, a domain or a name or a registration number, and get back everything the register knows: legal name, registration details, address, legal form, status, industry codes, employees, revenue, directors, and where it sits in its group.
The difference from a company lookup is where you start. A lookup finds a company you do not have. Enrichment completes and corrects the ones you do: the 40,000 accounts in the CRM with half the fields empty, the inbound leads that arrive as an email address, the supplier list with three spellings of the same firm. Data teams call the same job data appending. Either way, this is built on official registers, so what comes back is the registered entity, not a best guess from a website.
Three ways to match
Enrich a company record right now
The same call your integration would make: search by company name, open the record, and see every field the register holds for it. No key needed for the sample.
- Enrich by domain, company name or registration number
- Full company information: name, address, legal form, status, SIC and NACE codes, directors, financials
- One JSON schema for every market, one integration
- No key for the sample, production key on signup
Start enriching in 3 steps
Try it here, no key.
Paste a domain in the box above and see the record that comes back.
Get a key on signup.
7-day free trial, plans from $34 a month, key issued at once.
Enrich your records.
One call per record, or on a schedule. HubSpot users install the app instead.
Domain enrichment: from a website to the registered company
A domain is the key most CRM records already carry, and the hardest to match well: the website names the brand, not the legal entity. So the API does not guess from the domain. It reads the page, finds the imprint or footer, extracts the registration number or legal name it publishes, and searches the register with that. What comes back is the entity that owns the site, not a company with a similar name.
- Legal name and registration number taken from the site's own imprint
- Falls back to the register's website field when the page publishes nothing
- 45.1M companies have a website on record; for the rest, match by name or number
- Returns the operating company and its global headquarters, so you know the parent too


Enrich by company name or registration number
When the record has no domain, it still has a name, and often a number. A name with a country resolves through the register's own spellings and trade names, so "Heineken", "Heineken NV" and "HEINEKEN N.V." come back as one entity with one ID. A registration number skips the matching entirely: it is the key the register issued, and it is the match a compliance team wants to see on the record.
- Name plus country: trade names and spellings resolve to the registered entity
- Registration number plus country: KVK, Companies House, HRB, SIREN and 200+ more
- One register ID per legal entity, which is what collapses duplicate accounts
- Status, legal form and address corrected on every pass

Enrich the group, not just the company
Most CRMs do not know which of their accounts belong together. Every enriched record comes back with its local, national and global headquarters and the number of companies in the group, so the structure appears in your data by itself: two accounts turn out to be sisters under one parent, and a customer turns out to be one brand of many.
- Duplicates collapse: one register ID per entity, one parent above them
- Territories and roll-ups follow the real ownership, not a guess
- Upsell across the group: a customer's siblings are your warmest shortlist
Enrich in HubSpot without writing code
CompanyData Enrichment is a HubSpot app. Install it from the Marketplace, open a company record, and the enrichment card shows what the register holds; apply, and the fields are written back.
- Installs from the HubSpot Marketplace, no developer needed
- Enrichment card on every company record, fields updated on apply
- Same register-sourced record the API returns
- Trial and subscription managed inside the app
Everywhere else
No integration, no code. Send us the file and our data experts enrich the entire base against the registers, tailored to your fields and markets. Start with a free data audit of what you hold.
Three calls, one enriched record
Resolve the domain, find the entity in the register, pull the full record. Authenticate with an x-api-key header; the same key works for all three.
/api/website/htmlFetches the page and, with extract=true, returns the company signals in it: legal name, registration or VAT number, source and reliability per candidate.
/api/company/searchBy registration number, by name and country, or by website. Returns the matching records with their register IDs.
/api/company/exportEvery field for one ID: identity, address, industry codes, size, financials, executives and the headquarters chain.
# 1. Resolve the domain to company signals curl "https://app.companydata.com/api/website/html?url=heineken.com&extract=true" \ -H "x-api-key: $COMPANYDATA_API_KEY" # 2. Search the register with the registration number it found curl "https://app.companydata.com/api/company/search?nationalId=33011433&countryCode=NL" \ -H "x-api-key: $COMPANYDATA_API_KEY"
{
"meta": { "totalCount": 1, "currentPage": 1, "pageSize": 25 },
"data": {
"records": [{
"ID": "0123456789",
"Company Name": "Heineken N.V.",
"Company Registration Number": "33011433",
"Country": "Netherlands",
"City": "Amsterdam",
"Founding Year": 1864,
"Business Legal Type - Description": "Public limited company",
"Legal Status Code Description": "Active",
"Business Category Code 1 - Description": "Malt beverages",
"Employees Total": 89000,
"Yearly Revenue in U.S. Dollars": 39100000000,
"Number of Companies in Group": 465,
"Global Headquarter Company Name": "Heineken N.V.",
"Website": "theheinekencompany.com"
}]
}
}Every field the register holds, for any company
Pick a company and open the record: identity, address, industry codes, size, revenue, executives and group. Any of the 375M+ on file.
Ready to enrich your own records? Get your API key →
374,878,429 companies to enrich against
Every one from an official register, refreshed monthly. 13,878,084 of them were founded in 2026 and are already there to match.
Updated August 2026. Counts come from the platform at request time.
Enriched from the register, not from the web
Most enrichment tools fill your records from the web: a company's website, its LinkedIn page, whatever a crawler found. That works for the 40 to 50 million companies that have those, and fails quietly for the rest: the holding above your customer, the subsidiary that signs the contract, the builder with no website. For marketing that is often enough. For a CRM that has to be right, it means the record you just enriched describes a brand, not a legal entity, and two spellings of one customer stay two accounts.
This API starts every record at the official trade register of its country. That is why it can return a registration number, a legal form, filed accounts and the group structure, and why the same company always resolves to the same ID. Tools such as Clearbit, built into one CRM, and web-data APIs such as Coresignal are strong on technographics and hiring signals; this is what you use when the identity fields have to hold up.
Some teams take both: a monthly bulk file for the base, the API on top for new records and re-enrichment. Same registers, delivered both ways.
Among the registers behind the API: KVK (Netherlands), Companies House (UK), SEC EDGAR (USA) and 200+ more official authorities.
| CRM-native tools | Web-data APIs | CompanyData API | |
|---|---|---|---|
| Source | Web and partner data | Websites and social profiles | Official registers in 200+ countries |
| Coverage | Companies with a web presence | Companies with a web presence | Every registered legal entity |
| Match keys | Domain, email | Domain, name | Domain, name, registration number |
| Legal fields | Rarely | Rarely | Registration number, legal form, filed accounts, ownership |
| Duplicates | Per tool | Same company under many spellings | One record per legal entity, with its group |
| Updates | On re-fetch | When a page is re-crawled | Monthly register feeds |
| Runs in | One CRM | Your code | Your code, HubSpot app, or MCP |
How teams use the Company Enrichment API
Sales, RevOps and data teams, on the same three calls. Starting from a base that needs cleaning first? That is a separate job, and we do it too: see data cleansing.
Enterprise data cleansing, before you enrich →
Re-enrich every account on a schedule so addresses, legal forms, directors and status stay current without anyone checking a register by hand.
A work email or domain comes in, the full company record is on the lead before sales opens it.
One register ID per legal entity collapses duplicate accounts, and the group structure shows which accounts roll up to the same parent.
Enrich one customer and see every company in its group. A relationship with one brand becomes a shortlist of its siblings.
Verified identity fields as the golden record: registration number, legal name, legal form, status, on one schema in every market.
Expose enrichment as a tool through the MCP server. An SDR agent qualifies an account against the register before it writes a word.
What a register-sourced record does for a CRM
Every enriched field comes from the official register of the company's country. What lands in your CRM is what the register holds, not what a website says, and that changes how the CRM behaves.
- One legal entity per record, so duplicates collapse instead of multiplying
- Registration number, legal form and status on every account, ready for compliance
- Every plumber, holding and subsidiary, not only the companies with a website
- Re-enriched monthly, so a customer that dissolves or moves shows up in your data
- Group structure on each record, so territories follow the real ownership

Uber for Business, Amazon and Salesforce run on these records
CRM enrichment, outreach data and new-market account bases, on the same search and export calls you just tried.
A monthly registry feed of newly registered operators across 30+ European markets.
Read the storyVerified business records across European markets to build and qualify the account base for a new-market launch.
Read the storyRegister-sourced records with documented provenance, so European outreach ran on data a DPO could sign off.
Read the storyGroup linkage and subsidiary records feed external attack-surface mapping for security teams.
Read the storyCompany Enrichment API pricing
Public prices, a 7-day trial on every plan, one credit per enrichment. Teams enriching a whole CRM or running enrichment inside their platform get a custom plan.
Two ways to enrich
Sign up yourself. Pick a plan, start a 7-day trial, and the key is issued at once. Plans from $34 a month, prices public, one credit per enriched record, 50 requests per second. Right for enriching inbound leads, a form, or a CRM of a few thousand accounts.
Or talk to us. For a full CRM re-enrichment, a data warehouse, or a platform where your own customers share one key. Custom plans have no rate limit, are priced on volume from €500 a month, and start with a few weeks of testing on your own records, up to 1,000 free calls, no credit card.
Tell us what you want to enrich and how many records you hold.
* Card-free trials are for teams that fit a custom plan: platforms, higher volumes, or many end users on one key. Self-serve plans start a 7-day trial at signup.
| Self-serve | Custom plan | |
|---|---|---|
| Rate limit | 50 requests per second | None |
| Pricing | Public, from $34 a month | On volume, from €500 a month |
| Trial | 7 days, card at signup | A few weeks, up to 1,000 calls, no card* |
| Support | Docs and email | Dedicated contact and SLA |
| Contract | Monthly or yearly | Annual, on volume |
What our customers say
Real feedback from the people using CompanyData every day.
Extremely reliable, high quality service, and very competitive prices. Excellent! The very best firm we've ever worked with.
Quality data, fast and efficient service.
Frequently asked questions
What is a company enrichment API?
A company enrichment API takes a partial record you already hold, such as a domain, a company name or a registration number, and returns the complete company record: legal name, registration details, address, industry codes, size, financials, group structure and contacts.
The difference from a lookup is the starting point. A lookup finds a company you do not have yet. Enrichment completes and corrects the ones you do, one record at a time or on a schedule across a whole CRM.
What can I enrich by?
Three keys: a website domain, a company name with a country, or an official registration number with a country. The registration number is the surest match. The domain is the most common one in a CRM, and it resolves through the page itself: the API reads the imprint or footer, extracts the legal name or registration number, and searches the register with that.
About 44.8 million of the 376 million companies on file have a website on record, so where a record has no domain, name and number still match.
Can I enrich HubSpot or Salesforce records?
Yes. For HubSpot there is a native app, CompanyData Enrichment, installed from the HubSpot Marketplace: it adds an enrichment card to company records and writes the verified fields back on apply. For Salesforce and any other system, the REST API does the same through a call per record, and the JavaScript and Python SDKs cover the integration code.
How does enrichment avoid duplicate accounts?
Every record resolves to one legal entity with one register ID, so two spellings of the same company in your CRM come back as the same record. The record also carries the group: local, national and global headquarters, and the number of companies in the group. That is how you see that two accounts are sisters under one parent, and how you find the group members you do not have yet.
How is this different from Clearbit or Coresignal?
The source. Most enrichment tools are built on data collected from the web, which means they hold the companies that have a website and a social profile and miss the rest. This API starts every record at the official trade register of its country, so it covers every registered legal entity, with or without a website, and returns fields the web does not carry: registration numbers, legal forms, filed accounts and ownership.
Both approaches have a place. Web data is strong on technographics and hiring signals. Register data is what you need when the record has to be right.
How fresh is the enriched data?
The registers are re-read every month, so a business dissolved or newly registered this month shows up within weeks. Re-enrich on a schedule and the changes land in your records: address moves, new directors, a changed legal form, a company that stopped trading.
Is the enrichment GDPR compliant?
Yes. The data is business information from public registers with a documented source and lawful basis. Where records contain personal data, such as director names, the provenance and the basis for processing come with it.
How much does company enrichment cost?
Self-serve plans start at $34 a month on a yearly plan, or $39 monthly, and are priced on credits; one enrichment costs one credit. Every plan opens with a 7-day trial. Teams enriching a large CRM or running enrichment inside their own platform can take a custom plan, priced on volume from €500 a month, with no rate limit.
Is there a free trial?
Two. Sign up for any plan and the first 7 days are free, with a key issued at once. Or, if your use case fits a custom plan, request a trial on your own data: a few weeks with up to 1,000 free calls and no credit card.
One API, 200+ local trade registers
Test enrichment on your own records, no credit card
Tell us what you want to enrich and how many records you hold. You get a trial key for a few weeks with up to 1,000 free calls, plus a real enriched sample from your own list, within 24 hours.
* Card-free trials are for teams that fit a custom plan: platforms, higher volumes, or many end users on one key. Self-serve plans start a 7-day trial at signup.
or call +31 (0)20 705 2360