Get the structured profile of a company by its registry ID
get_company_profileRetrieve the full profile of a company using its registry-specific ID, returning unified fields like jurisdiction, status, incorporation date, and address, plus raw upstream data for cross-country comparison. Use this tool to get a company's core details before accessing filings or officers with dedicated tools.
Instructions
Fetch the full profile of a company by its registry-specific ID. Returns unified top-level fields (jurisdiction, company_id, company_name, status, status_detail, incorporation_date, registered_address) plus a jurisdiction_data object carrying the raw upstream fields verbatim. The status field is a coarse four-value enum (active / inactive / dissolved / unknown) safe for cross-country comparison; status_detail carries the registry's native status string. The registered_address top-level field is a flattened string; the original nested address (when upstream provides one) is preserved in jurisdiction_data.
Does NOT include filings, officers, PSCs, shareholders, or charges — call the dedicated tools (list_filings, get_officers, get_persons_with_significant_control, get_shareholders, get_charges) for those.
Input company_id is the registry's canonical identifier for the jurisdiction; shapes vary (8-digit numbers, prefixed alphanumerics, hyphenated forms, multi-shape routing by length, etc.) and many registries accept light normalisation (leading-zero padding, whitespace / hyphen stripping, alternate equivalents). Pull a company_id from search_companies whenever possible rather than guessing.
Optional flags include_vr, include_history, include_establishments enable extra upstream fetches on jurisdictions that support them and are ignored elsewhere. fresh: true bypasses the cache.
Per-country caveats (ID format, accepted input shapes, jurisdiction_data field catalogue, paid-tier gates, status taxonomy) are available on demand — call list_jurisdictions({jurisdiction:"<code>"}) for the full schema, or list_jurisdictions({supports_tool:"get_company_profile"}) for the country-support matrix. All registries are official government sources.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| jurisdiction | Yes | ISO 3166-1 alpha-2 country code (uppercase). All registries are official government sources. Currently supported: AU, BE, CA, CA-BC, CA-NT, CH, CY, CZ, DE, ES, FI, FR, GB, HK, IE, IM, IS, IT, KR, KY, LI, MC, MX, MY, NL, NO, NZ, PL, RU, TW. Per-country capability, ID format, examples, status mapping, and caveats: call `list_jurisdictions({jurisdiction:'<code>'})`. To find which countries support a specific tool: `list_jurisdictions({supports_tool:'<tool>'})`. | |
| company_id | Yes | Registry-specific company identifier. GB: 8-digit Companies House number (e.g. '00445790'), or SC/NI/OC/LP prefix (e.g. 'SC123456'). NO: 9-digit organisation number (e.g. '923609016'). AU: 11-digit ABN (e.g. '16009661901') or 9-digit ACN (e.g. '009661901'). IE: numeric (e.g. '104547'); add '/B' suffix to query the business-name register (e.g. '540274/B'). FR: 9-digit SIREN (e.g. '652014051') or 14-digit SIRET (auto-resolved to parent SIREN). FI: Y-tunnus '7digits-1digit' (e.g. '0112038-9'); 8-digit no-dash form auto-reformatted. CZ: 8-digit IČO (e.g. '27074358'); 1-7 digit values auto-padded. PL: 10-digit KRS number (e.g. '0000635012'); 1-9 digit values auto-padded. See the tool description for full details. | |
| include_vr | No | CZ only. When true, also fetch the VR (commercial register) record and merge it under jurisdiction_data._vr — adds spisovaZnacka (case file number array; use latest by datumZapisu), zakladniKapital (share capital history with vklad/splaceni), akcie (share emissions), cinnosti (registered business activities), insolvence + konkursy (insolvency proceedings — full records, not just the administrators surfaced via get_officers), rejstrik (public-register type), stavSubjektu. Slower than the basic profile (one extra upstream call) but avoids needing get_officers/PSC/charges just to inspect these fields. | |
| include_history | No | PL only. When true, ALSO fetch /OdpisPelny and graft the full historical entry log (naglowekP.wpis[] — every change ever made to the KRS record, with numerWpisu / opis / dataWpisu / sygnaturaAktSprawyDotyczacejWpisu) onto jurisdiction_data. Doubles upstream calls. | |
| include_establishments | No | BE only. When true, ALSO fetch the vestiginglijst (establishment-units list) and graft it onto jurisdiction_data.establishments[] — each unit's 10-digit vestigingsnummer, status, start date, name, and address. One extra upstream call; omit to just get the count + establishments_list_url. | |
| fresh | No | Bypass cache. Default false. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| queried_at | Yes | ISO-8601 + Europe/London timezone stamp for when the registry was queried. | |
| jurisdiction | No | ||
| company_id | No | ||
| company_name | No | ||
| status | No | Four-value unified status safe for cross-jurisdiction comparison. | |
| status_detail | No | ||
| incorporation_date | No | ||
| registered_address | No | ||
| jurisdiction_data | No | Full original response fields from the upstream registry, field names unchanged. Shape is jurisdiction-specific — see `list_jurisdictions({ jurisdiction: '<CODE>' })`. |