UK Companies House Enrichment for Lead Lists and KYB
Pricing
$20.00 / 1,000 company enricheds
UK Companies House Enrichment for Lead Lists and KYB
Enriches UK companies from the official Companies House API: status, incorporation date, SIC labels, registered address, accounts dates, active officers, PSCs and latest filings. Feed it names or numbers, or search by keyword, SIC code and postcode. Bring your own free key; no proxies, no browser.
Pricing
$20.00 / 1,000 company enricheds
Rating
0.0
(0)
Developer
Jessy Mariau
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
UK Companies House Enrichment
Every UK limited company has a public record: when it was formed, whether it is still trading, who runs it, who owns it, where it is registered and what it last filed. Companies House gives all of that away through a free API. The catch is that the API hands it back as six different endpoints, half of them paginated, with a rate limit that bites the moment you point a loop at it.
I built this Actor because I kept rebuilding the same glue every time a lead list needed a company number, a director name or a "still active?" column. Give it a list of names or numbers, or a search, and it hands back one flat row per company that you can drop straight into a sheet, a CRM or the next Actor in your chain.
What it does
You can feed it a list or point it at a search.
With a list, you paste company names or numbers, one per line. A number is looked up directly. A name is searched, and the hit is only accepted when the top result is the same name once case, punctuation and LTD versus LIMITED are ignored. If the top result is anything else, the row comes back as matched: false with the top 3 candidates attached, and you make the call rather than the Actor guessing on your behalf.
With a search, you give a keyword that must appear in the company name, a 5-digit SIC code, a postcode prefix for the registered address, or any mix of those, capped at whatever result count you set. That is how you get "every software company registered in G1" without typing a single name.
Each company comes back as one row. The profile part covers whether it is active or dissolved, what kind of company it is, when it was incorporated and under which jurisdiction, every SIC code it declares with a plain-English label for the main one, the registered office split into address columns, the last and next dates for accounts and for the confirmation statement, and whether it carries charges or an insolvency history. There is a link to the company's public page on every row. Switch on the options and you also get the officers who have not resigned, the persons with significant control who have not ceased, and the five most recent filings.
Everything is read from the official Companies House REST API. Nothing is scraped, and there is no proxy or browser in the loop.
What you need
A Companies House API key. It is free and takes about two minutes: register at https://developer.company-information.service.gov.uk/, create an application and add a REST API key. Paste it into the apiKey field; Apify stores it as a secret and it never appears in the log or the dataset.
Run the Actor with no key and you get three sample rows in demo mode, nothing charged, so you can see the shape before you connect anything.
How to run it
A list of companies, with officers and owners:
{"apiKey": "your-companies-house-key","companies": "09876543\nSC123456\nExample Software Ltd\nAcme Widgets","includeOfficers": true,"includePSC": true,"includeFilings": false}
A search instead of a list:
{"apiKey": "your-companies-house-key","searchQuery": "software","sicCode": "62012","postcodePrefix": "G1","maxResults": 50}
The OUTPUT record in the key-value store holds a summary: how many inputs were processed, how many matched, how many events were charged and which inputs came back unmatched.
Output fields
| Field | What it holds |
|---|---|
input | the line you gave, or search: plus the query |
matched | true when a company was found and enriched |
company_number, company_name | as registered |
status, type, date_of_creation, jurisdiction | active, dissolved, liquidation and so on; ltd, plc, llp and so on |
sic_codes, sic_code_primary, sic_label_primary | all SIC codes, the first one, and its label from the Companies House SIC list |
address_line_1, address_line_2, locality, region, postal_code, country | the registered office, one column each |
registered_address | the same address on one line |
accounts_last_made_up_to, accounts_next_due | accounts dates |
confirmation_statement_last_made_up_to, confirmation_statement_next_due | confirmation statement dates |
has_charges, has_insolvency_history | booleans from the profile |
officers, officer_count | active officers only: name, role, appointed_on, nationality, country_of_residence, occupation (when enabled) |
psc_names | current persons with significant control (when enabled) |
filings | the five latest filing-history entries: date, type, category, description (when enabled) |
companies_house_url | the company's public page |
candidates | for an unmatched name, up to 3 possible companies with number, status and address |
error | why a row could not be enriched, or null |
checked_at | when the run happened |
Pricing
Pay per event: one company-enriched charge per company that comes back matched. An unmatched name, an unknown number or a search that finds nothing costs no event. Officers, PSCs and filings are extra API calls behind the scenes but they never add a charge; the price is per company, whatever you switch on.
Limits
- Searches return active companies only. Switch on includeDissolved to see dissolved and liquidated ones too. A postcode prefix is enforced on the registered office address, so a loose address match cannot leak in.
Pair it with a workflow
If you run n8n, my free templates on https://n8n.io/creators/fractional-hq take a list like this Actor's output and turn it into lead scoring, outreach drafts and follow-ups without another tool in the chain.
Built by Fractional HQ
I run Fractional HQ, a one-man studio for design and automation. I do not write code by hand: I architect, review and hold the standard while AI agents do the typing. That method runs my own estate, seven brands, a Postgres operations system, more than 100 scheduled jobs, published n8n templates, Zapier Silver certified.
Want this wired into your CRM and outreach, or built and handed over working? Get in touch: https://fractionalhq.uk/brief