Data source: UK Companies House
https://context.gnist.ai/rest/companies-house/
AuthenticationAll requests require a Gnist-API-Key header (or api_key query parameter).
Free tier: 100 calls/day. Get your API key.
Tools (5)
search_uk_companiesSearch for UK companies by name on Companies House.
Companies House is the UK's official company registry, covering 5+ million
companies including PLCs, LTDs, LLPs, and foreign branches registered in
England, Wales, Scotland, and Northern Ireland.
Args:
query: Company name to search for.
limit: Number of results (1–100, default 10).
Returns:
Dict with 'count' and 'companies' list. Each result includes company_number,
title, company_status, company_type, date_of_creation, and address_snippet.
| Parameter | Type | Required | Description |
|---|---|---|---|
query | string | required | Company name to search for (e.g. "Tesco", "Barclays", "Rolls-Royce"). |
limit | integer | optional | Number of results to return (1–100, default 10). (default: 10) |
{
"query": "example"
}lookup_uk_companyLook up a UK company by its Companies House company number.
Returns the full company profile including name, status, type, SIC codes,
registered address, jurisdiction, and previous names.
Company numbers are 8 characters — numeric for English/Welsh companies,
prefixed with SC (Scotland), NI (Northern Ireland), or other codes.
Args:
company_number: The Companies House company number.
Returns:
Dict with full company profile, or {"error": "not_found"} if not found.
| Parameter | Type | Required | Description |
|---|---|---|---|
company_number | string | required | UK company number (e.g. "00445790" for Tesco PLC, "SC123456" for a Scottish company). |
{
"company_number": "123456789"
}list_uk_company_officersList directors, secretaries, and other officers for a UK company.
Returns current and past officers with their roles, appointment dates,
nationality, and occupation. Resigned officers include their resignation date.
Args:
company_number: The Companies House company number.
limit: Number of results (1–100, default 20).
Returns:
Dict with 'company_number', 'count', and 'officers' list.
| Parameter | Type | Required | Description |
|---|---|---|---|
company_number | string | required | UK company number. |
limit | integer | optional | Number of officers to return (1–100, default 20). (default: 20) |
{
"company_number": "123456789"
}list_uk_company_filingsList filing history for a UK company.
Returns recent filings including accounts, annual returns, officer changes,
and other regulatory submissions to Companies House.
Args:
company_number: The Companies House company number.
category: Optional filter by filing category.
limit: Number of results (1–100, default 20).
Returns:
Dict with 'company_number', 'count', and 'filings' list.
| Parameter | Type | Required | Description |
|---|---|---|---|
company_number | string | required | UK company number. |
category | any | optional | Filter by filing category: "accounts", "officers", "address", "annual-return", "capital", "change-of-name", "incorporation", "liquidation", "miscellaneous", "mortgage", "resolution". |
limit | integer | optional | Number of filings to return (1–100, default 20). (default: 20) |
{
"company_number": "123456789"
}report_feedbackReport a bug, feature request, or general feedback for this data source.
Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.
Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.
| Parameter | Type | Required | Description |
|---|---|---|---|
feedback | string | required | |
feedback_type | string | optional | (default: "general") |
{
"feedback": "example"
}Quick Start
curl -X POST "https://context.gnist.ai/rest/companies-house/search_uk_companies" \
-H "Content-Type: application/json" \
-H "Gnist-API-Key: YOUR_API_KEY" \
-d '{"query": "example"}'
import httpx
resp = httpx.post(
"https://context.gnist.ai/rest/companies-house/search_uk_companies",
headers={"Gnist-API-Key": "YOUR_API_KEY"},
json={
"query": "example"
},
)
print(resp.json())