Discover/companieshouse.gov.uk API
live

companieshouse.gov.uk APIcompanieshouse.gov.uk

Access UK Companies House data via API: search companies and officers, retrieve profiles, filing history, charges, PSCs, and officer appointments.

Endpoints
8
Updated
10d ago
Try it
Page number for pagination
Search query (company name or number)
api.parse.bot/scraper/e9f73887-9fc3-4808-a6e2-0e88d8719a6a/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Use it in your codegrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/e9f73887-9fc3-4808-a6e2-0e88d8719a6a/search_companies?page=1&query=TESCO' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 8 totalclick to expand

Search for companies by name or number. Returns paginated results with up to 20 companies per page.

Input
ParamTypeDescription
pageintegerPage number for pagination
queryrequiredstringSearch query (company name or number)
Response
{
  "type": "object",
  "fields": {
    "items": "array of company objects with company_name, company_number, status, address, and url"
  },
  "sample": {
    "data": {
      "items": [
        {
          "url": "https://find-and-update.company-information.service.gov.uk/company/00445790",
          "status": "Matching previous names:TESCO STORES (HOLDINGS)",
          "address": "Tesco House, Shire Park, Kestrel Way, Welwyn Garden City, United Kingdom, AL7 1GA",
          "company_name": "TESCO PLC",
          "company_number": "00445790"
        }
      ]
    },
    "status": "success"
  }
}

About the companieshouse.gov.uk API

This API covers 8 endpoints for UK Companies House data, letting you search companies and officers, retrieve full company profiles, and pull structured records including filing history, registered charges, and Persons with Significant Control. The get_company_profile endpoint alone returns 10 fields covering status, SIC codes, incorporation date, and accounts dates. All endpoints accept a company registration number or officer ID and return structured JSON.

Search and Discovery

The search_companies endpoint accepts a query string (company name or number) and returns paginated arrays of up to 20 results per page, each containing company_name, company_number, status, address, and url. The search_officers endpoint works the same way for individual officers, returning name, officer_id, description, address, and url per result. Both endpoints accept an optional page integer for pagination.

Company Detail Endpoints

get_company_profile takes an 8-character alphanumeric company_number and returns the full registered profile: company_name, company_type, status, incorporated_on, dissolved_on (empty string if active), registered_office_address, nature_of_business as an array of SIC code strings, and confirmation_statement and accounts objects holding next and last statement dates.

get_company_filing_history accepts an optional category filter — values include accounts, confirmation-statement, capital, and incorporation — and returns an array of filings with date, type, description, and pdf_url for each. get_company_charges returns an array with charge_id, title, created, delivered, status, persons_entitled, and short_particulars per charge. get_company_persons_with_significant_control returns each PSC's name, notified_on, date_of_birth, nationality, country_of_residence, and nature_of_control array.

Officer Endpoints

get_company_officers returns all current and former officers for a company, including name, officer_id, role, status, address, appointed_on, resigned_on, nationality, and country_of_residence. You can take any officer_id from these results and pass it to get_officer_appointments to retrieve that officer's full appointment history across all companies, with total_appointments, and per-appointment fields for company_name, company_number, role, status, appointed_on, and resigned_on.

Common use cases
  • Look up a company's SIC codes, incorporation date, and registered address using get_company_profile for business verification workflows.
  • Monitor changes to a company's registered charges by polling get_company_charges for new or satisfied charge records.
  • Identify beneficial ownership structures by retrieving PSC names and nature_of_control arrays from get_company_persons_with_significant_control.
  • Audit director networks by tracing an officer's full appointment history across multiple companies via get_officer_appointments.
  • Download filing PDFs (accounts, confirmation statements, incorporation documents) from get_company_filing_history filtered by category.
  • Screen counterparties in due diligence by checking company status, dissolved_on, and officer resigned_on fields.
  • Build a company search autocomplete backed by search_companies returning live registration numbers and statuses.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000250 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Companies House have an official developer API?+
Yes. Companies House publishes an official REST API documented at https://developer-specs.company-information.service.gov.uk/. It requires a free API key obtained by registering a user account. The Parse API provides structured access to the same public records without managing API keys or account registration.
What does `get_company_filing_history` return, and can I filter by filing type?+
It returns an array of filing objects, each with date, type, description, and pdf_url. You can narrow results using the optional category parameter — accepted values include accounts, confirmation-statement, capital, and incorporation. Without a category, the endpoint returns filings across all categories for the given company_number.
How does the PSC endpoint handle corporate entities and legal persons as controllers, not just individuals?+
The pscs array in get_company_persons_with_significant_control includes both individuals and entities where Companies House records them. For corporate PSCs, fields like date_of_birth and nationality may be empty. The name and nature_of_control fields are populated for both individual and non-individual PSCs.
Does the API return company financials or annual account figures?+
Not currently. The API returns accounts dates (next and last due dates) in the get_company_profile response and filing metadata with PDF links in get_company_filing_history, but does not parse the numerical financial data from within submitted accounts documents. You can fork this API on Parse and revise it to add an endpoint that extracts structured figures from the accounts PDFs.
How are company numbers formatted and what if I have fewer than 8 characters?+
Companies House registration numbers are 8-character alphanumeric strings. Numbers for companies in England and Wales are zero-padded (e.g., 00445790). Scottish companies begin with SC, Northern Irish with NI. If you have a shorter numeric string, pad it with leading zeros to reach 8 characters before passing it as company_number.
Page content last updated . Spec covers 8 endpoints from companieshouse.gov.uk.
Related APIs in Government PublicSee all →
identify.plantnet.org API
Identify and explore plant species by searching through Pl@ntNet's comprehensive botanical database to access detailed information like taxonomic families, genera, species descriptions, photos, and community observations. Track plant distributions, view contribution trends, and discover expert contributors within the platform's collaborative plant identification community.
data.lime.bike API
Access real-time availability data for Lime bikes and scooters, including station locations, vehicle status, system alerts, and geofencing zones across multiple cities. Monitor micromobility inventory and service information to find nearby vehicles or plan your trips effectively.
accessdata.fda.gov API
Search and retrieve comprehensive FDA premarket approval information for medical devices, including approval status, supplements, applicant details, and advisory committee data. Get instant access to specific PMA records with all relevant approval information in one place.
eprocurement.gov API
Monitor India's public procurement opportunities by accessing active tenders, bids closing today, global tenders, high-value contracts, and cancelled tenders from the Central Public Procurement Portal. Search tender details, browse participating organizations, and track real-time procurement statistics to stay informed on government contracting opportunities.
cmegroup.com API
Get CME Group market data including FedWatch interest-rate probabilities, futures quotes and settlements, volume/open interest history, and options expirations and near-the-money option chains.
alienvault.com API
Search and analyze global threat intelligence data including indicators of compromise, threat pulses, and adversary profiles from the Open Threat Exchange community. Monitor recent security alerts and access detailed information about threats and adversaries to strengthen your cybersecurity defenses.
api.nasa.gov API
Access NASA's suite of open data APIs — including the Astronomy Picture of the Day, Near Earth Object tracking, DONKI space weather events, EPIC Earth imagery, Mars weather, the NASA Image and Video Library, the Exoplanet Archive, and EONET natural events.
mahatenders.gov.in API
Access Maharashtra government tenders from mahatenders.gov.in, browsing them by closing date or by organization with full tender details and pagination support. Find and review procurement opportunities across different government departments in one place.