Companies endpoint

Overview

The Company Search endpoint allows you to search for companies across multiple countries using a flexible set of filters. You can retrieve detailed company information including registration data, financial statements, LinkedIn data, and metadata timestamps.

The endpoint supports two modes:

ModeActivated byReturns
Full searchMinifiedSearch = false (default)Complete company data: BasicDetails, EnhancedDetails, Financials, MetaData, LinkedIn
Minified searchMinifiedSearch = trueLightweight MinifiedInfo only — see below

Full Search Mode

Returns the complete company profile including registration details, enriched data (employees, keywords, group structure), financial statements across multiple currencies and consolidation levels, LinkedIn profile data, and metadata with data freshness timestamps.

Minified Search Mode

Returns only the MinifiedInfo object per company — a compact summary designed for efficient synchronization and listing. Each MinifiedInfo contains:

  • Identifiers: Valu8Id, OrgNo, CompanyName, CountryCode
  • Status: OperationalStatus (e.g., Active = 10, Dissolved = 50)
  • Fiscal data: LastFiscalYearEnd, LocalCurrencyCode
  • Group structure: UltimateParentOrgNo
  • Website: Url
  • Data freshness timestamps — use these to detect what has changed since your last sync:
    • CompanyInfoUpdatedAt — company registration data changed
    • FinancialsUpdatedAt — financial statements updated
    • BeneficialOwnerUpdatedAt — UBO/beneficial owner data changed
    • KeyPeopleUpdatedAt — board members or CEO changed
    • OwnersUpdatedAt — ownership structure changed
    • ContentUpdatedAt — broad content update (includes relations)
    • RelationsUpdatedAt — corporate group relationships changed

Typical use case: Call with MinifiedSearch = true periodically to get a list of all companies with their update timestamps. Compare timestamps against your local cache to identify which companies need a full re-fetch.

Note: Minified search mode cannot be combined with cursor-based pagination.

Authentication

All requests require authentication. Include your credentials via the configured authentication mechanism (e.g., Bearer token in the Authorization header). If authentication fails, the endpoint returns HTTP 401 Unauthorized.


Request

Request Body

Send a JSON POST body with the following fields:

FieldTypeRequiredDefaultDescription
SearchParametersobject✅ YesA dictionary of search filters. Each key is a parameter name and each value is an array of filter values. See Section 3.2.
CurrencystringNo"USD"The currency for financial data conversion. Supported values include "SEK", "EUR", "USD", "GBP", "DKK", "NOK", and more.
PageNumberintegerNo1The page number to retrieve. Valid range: 1–10. Cannot be used together with Cursor.
PageSizeintegerNo10The number of companies per page. Valid range: 1–500.
SortByColumnstringNonull (Valu8Id)The field name to sort results by. Must be a sortable field. Use the Search Parameters endpoint to discover sortable fields. Cannot be used together with Cursor.
SortByDirectionstringNo"ASC"Sort direction: "ASC" (ascending) or "DESC" (descending). Cannot be used together with Cursor.
CursorstringNonullAn alternative to page-based pagination for iterating over large result sets (up to 100,000 companies). See Section 3.3. Cannot be combined with MinifiedSearch, SortByColumn, SortByDirection, or PageNumber > 1.
MinifiedSearchbooleanNofalseWhen true, the response returns only MinifiedInfo per company instead of full details. Cannot be used together with Cursor.

Search Parameters

The SearchParameters field is a dictionary where each key is a filter name and each value is an array of one or more filter values.

{"SearchParameters": { "CountryCode": ["SE", "NO"], "OperationalStatus": [10], "DynamicSearch": ["technology consulting"] }}

Key rules:

  • At least one search parameter is required.
  • Providing a single value, e.g., "NetSales": [1000000], implies a minimum threshold. However, providing two values, "NetSales": [1000000, 2000000], defines a range.
  • CountryCode values must match your authorized countries.
  • Parameter names are case-insensitive.
  • Financial parameters support year suffixes: NetSales_Year_2023.
  • See _v2_search-parameters.md for the full parameter reference, or call GET /v2/companies/search-parameters for the live list scoped to your subscription.

Pagination: Pages vs Cursor

The API offers two pagination strategies. Choose page-based for interactive UIs and smaller result sets (up to 5,000 companies). Choose cursor-based for large exports and synchronization (up to 100,000 companies per search).

Page-based pagination

Use PageNumber (1–10) and PageSize (1–500). Maximum reach: page 10 × 500 = 5,000 companies. Results can be sorted with SortByColumn and SortByDirection, and you may use MinifiedSearch for lightweight listings.

{
  "PageNumber": 1,
  "PageSize": 100,
  "SearchParameters": {
    "CountryCode": ["SE", "NO"],
    "OperationalStatus": [10],
    "DynamicSearch": ["technology consulting"]
  }
}

Use CurrentPage, HasNext, and HasPrevious from the X-Pagination header to drive UI paging. See Section 4.2.

Cursor-based pagination

Use cursor mode when you need to walk through more than 5,000 companies—for example, a country-wide export or syncing all companies that match your filters.

How cursor pagination works

Each page is a separate POST /v2/companies call. The API returns up to PageSize companies (max 500) and an opaque cursor token in the X-Pagination response header. That token encodes the position in the result set; pass it back on the next request to continue where the previous call left off.

StepWhat to do
1. First requestSet Cursor to "*" (start of result set). Use the same SearchParameters (and Currency) you want for the full run. Prefer PageSize: 500 to minimize round trips.
2. Read responseParse the X-Pagination header (JSON). See Section 4.2. Append each non-empty Companies array to your local store.
3. Next requestCopy the Cursor value from X-Pagination into the request body. Keep SearchParameters, PageSize, and Currency unchanged—only the cursor advances.
4. RepeatContinue until a page returns an empty Companies array, or until X-Pagination.Cursor is null.

Important: When using Cursor, you cannot use MinifiedSearch, SortByColumn, SortByDirection, or PageNumber (other than the default 1). Cursor mode always returns full company profiles, sorted by Valu8Id ascending.

First request example:

{
  "Cursor": "*",
  "PageSize": 500,
  "SearchParameters": {
    "CountryCode": ["SE"]
  }
}

Next request example — use the cursor from the previous response header:

{
  "Cursor": "eyJTdGFydERDSUQiOjEwMSwiSXRlbUNvdW50ZXIiOjUwMH0=",
  "PageSize": 500,
  "SearchParameters": {
    "CountryCode": ["SE"]
  }
}

Example X-Pagination header on an intermediate page:

{
  "Count": 500,
  "TotalCount": 125000,
  "PageSize": 500,
  "TotalPages": 250,
  "Cursor": "eyJTdGFydERDSUQiOjUwMSwiSXRlbUNvdW50ZXIiOjUwMH0="
}

On the last page with data, Count may be less than PageSize. When there are no more companies, you typically receive an empty Companies array and Cursor is null in the header.

Integration tips
  • Do not invent or modify cursor tokens—they are opaque and validated server-side. A bad token returns Cursor has not a valid value. (HTTP 400).
  • TotalCount in X-Pagination reflects how many companies match the search; you can use it for progress UI, but always use cursor + empty Companies to detect completion.
  • Page-based vs cursor: Use pages when you need sorting, minified results, or fewer than 5,000 records. Use cursor for large full-profile exports.
  • Small lookups may omit Cursor on the first call and use PageNumber instead; for explicit, full iteration over large sets, always start with "*" and loop until done.
  • Rate limits apply per request; use PageSize: 500 and reasonable backoff if you receive HTTP 429.
Maximum iteration limit

Cursor pagination is capped at 100,000 companies per search (across all pages in one cursor run). If you keep requesting pages after that cumulative limit, the API returns HTTP 400:

You are not allowed to iterate more than 100000 via cursor.

The limit applies to the same SearchParameters and cursor chain—not per HTTP call. To continue beyond 100,000, start a new search with narrower filters (for example, split by ContentUpdatedAt or CompanyInfoUpdatedAt date ranges), or use batch files.

Need more than 100,000 companies? If your integration needs a larger dataset—a full-country company export, periodic full sync, or anything above the cursor cap—use the Batch Files API instead. Batch files are pre-generated bulk exports (JSON Lines, Brotli-compressed) scoped to your account, with no cursor iteration limit. List available files with GET /v2/batches/batch-files, then download via GET /v2/batches/batch-file/{batchFileId}. Contact Valu8 support for batch types and schemas that match your subscription.

Sorting

Set SortByColumn to any sortable field name and SortByDirection to "ASC" or "DESC". If SortByColumn is not specified, results are sorted by Valu8Id ascending.

Use the search-parameters endpoint to discover which fields are sortable.


Response

Success Response (HTTP 200)

Returns a GetCompaniesResponse JSON body and an X-Pagination header.

Pagination Header (X-Pagination)

Every successful response includes an X-Pagination HTTP response header with pagination metadata as JSON:

FieldTypePresentDescription
CountintegerAlwaysNumber of companies in the current response.
TotalCountintegerAlwaysTotal number of companies matching the search.
PageSizeintegerAlwaysThe requested page size.
TotalPagesintegerAlwaysTotal number of pages available.
CurrentPageintegerPage mode onlyThe current page number (1-based).
HasPreviousbooleanPage mode onlytrue if there is a previous page.
HasNextbooleanPage mode onlytrue if there is a next page.
CursorstringCursor mode onlyThe cursor token to use in the next request. null when no more results are available.

Example header (page mode):

{"Count": 100, "TotalCount": 3542, "PageSize": 100, "TotalPages": 36, "CurrentPage": 1, "HasPrevious": false, "HasNext": true}

Example header (cursor mode):

{"Count": 500, "TotalCount": 25000, "PageSize": 500, "TotalPages": 50, "Cursor": "eyJTdGFydERDSUQiOjUwMSwiSXRlbUNvdW50ZXIiOjUwMH0="}


Validation Error Response (HTTP 400)

Returned when request validation fails.

{"type": "https://datatracker.ietf.org/doc/html/rfc9110#name-400-bad-request", "status": 400, "title": "One or more validation errors occurred.", "errors": { "parameters": [ "Searchparameters are missing.", "Currency is invalid." ] }}

Common validation errors:

Error MessageCause
Searchparameters are missing.SearchParameters is null or empty.
Pagenumber must be between 1-10.PageNumber is outside the 1–10 range (when not using cursor).
Pagesize could max be 500.PageSize exceeds 500.
Currency is invalid.Unsupported currency code.
Sortfield is invalid.SortByColumn is not a valid sortable field.
Sort direction is invalid.SortByDirection is not "ASC" or "DESC".
{value} is an unauthorized country code.The country code is not in your authorized set.
{param} is an invalid parameter.The search parameter name is not recognized.
Cursor has not a valid value.The cursor token is malformed.
You are not allowed to iterate more than 100000 via cursor.Cursor iteration limit reached.
MinifiedSearch,SortByColumn,PageNumber,SortByDirection cant be applied when using Cursor.Incompatible options used with cursor.

Unauthorized Response (HTTP 401)

Returned with an empty body when authentication fails.


Response Body

The top-level JSON response body.

FieldTypeDescription
CompaniesCompany[]Array of company objects matching the search criteria. May be empty if no results are found. Serialized as a JSON array (the server type is PagedList<Company>); pagination metadata (TotalCount, CurrentPage, Cursor, etc.) is returned in the X-Pagination header, not in the body. See Section 6.

Note: ValidationResults is only included when there are validation errors (HTTP 400 path). On success it is omitted from the response.


Company Object

Each item in the Companies array. All sub-objects are conditionally included — they are omitted from the JSON when they have no data, keeping the response compact.

FieldTypeConditionDescription
BasicDetailsBasicDetailsOmitted when nullCore company information: name, registration number, address, industry codes, legal form, operational status. Present in full search mode. See Section 7.
EnhancedDetailsEnhancedDetailsOmitted when nullEnriched data: employee counts, keywords, private equity ownership, website summary, group structure, ultimate parent. Present in full search mode. See Section 8.
MinifiedInfoMinifiedInfoOmitted when nullLightweight summary with key identifiers and update timestamps. Present in minified search mode (MinifiedSearch = true). See Section 9.
FinancialsFinancialsCategoriesOmitted when nullConsolidated financial statements in the currency from your Currency request parameter (MetaData.CurrentCurrencyCode). See Section 12.1.
UnconsolidatedFinancialsFinancialsCategoriesOmitted when nullUnconsolidated (parent-only) financial statements in the requested currency. See Section 12.1.
MetaDataMetaDataOmitted when nullCurrency settings, fiscal year info, financial figure scale, and data freshness timestamps. See Section 10.
LinkedInLinkedInOmitted when nullCompany profile data sourced from LinkedIn. See Section 11.
ScoredoubleOmitted when nullSearch relevance score. Higher values indicate a better match. Present only for text-based searches (DynamicSearch, SemanticSearch).

BasicDetails

Core identifying and registration information. Present in full search mode.

FieldTypeConditionDescription
Valu8IdintegerAlwaysUnique Valu8 identifier. Use as the primary key when referencing companies across API calls.
CompanyNamestringOmitted when nullOfficial registered company name.
OrgNostringOmitted when nullNational organisation/registration number. Format varies by country (e.g., "556000-1234" for Sweden, "12345678" for UK).
CountryCodestringOmitted when nullTwo-letter ISO 3166-1 alpha-2 country code (e.g., "SE", "NO", "GB", "DE", "FR").
CompanyTypeintegerOmitted when 0The company's role in a corporate group hierarchy. See Section 13.3.
OperationalStatusintegerOmitted when 0Whether the company is active, dormant, bankrupt, dissolved, etc. See Section 13.1.
LegalFormintegerOmitted when 0Legal form code (limited company, sole proprietorship, partnership, etc.). See Section 13.2. Use Section 13.7 for common search-filter values.
ListingTypestringOmitted when nullStock exchange listing status. See Section 13.5.
AddressAddressesOmitted when nullRegistered postal address. See Section 7.1.
DescriptionDescriptionOmitted when nullBusiness descriptions in English and original language. See Section 7.2.
IndustryCodeIndustryCodeAlwaysIndustry classification codes. Defaults to empty lists when no codes are available. See Section 7.3.
EmailstringOmitted when nullOfficial contact email.
PhonestringOmitted when nullOfficial contact phone number.
URLstringOmitted when nullPrimary website URL.
AdditionalUrlsstring[]Omitted when nullAdditional website URLs.
VATNumberstringOmitted when nullVAT identification number.
RegistrationDatestringOmitted when nullDate the company was registered.
SignatorystringOmitted when nullAuthorized signatory or signing rules.
PreviousNamesstring[]Omitted when nullHistorical company names.
HasReportedMissingUBObooleanAlwaystrue if the company has been flagged as missing Ultimate Beneficial Owner (UBO) data.

Addresses

FieldTypeDescription
StreetstringStreet name and number.
ZipcodestringPostal / zip code.
CitystringCity or town.
CountystringCounty, state, or region.
MuncipalitystringMunicipality or local administrative area.

Description

FieldTypeDescription
BusinessDescriptionENGstringBusiness description in English.
BusinessDescriptionOriginalstringBusiness description in the company's original language.

IndustryCode

Always present but lists may be empty.

FieldTypeDescription
IndustryCodesIndustryItem[]Industry codes assigned to the company.
WeightedGroupIndustryCodesIndustryItem[]Weighted industry codes at the group level.

IndustryItem

FieldTypeDescription
CodestringClassification code (e.g., "62.01").
TextstringHuman-readable description (e.g., "Computer programming activities").
TypestringClassification system. See Section 13.4.

EnhancedDetails

Extended enriched company data. Present in full search mode.

FieldTypeConditionDescription
EmployeesFinancialsTimeSeriesOmitted when nullConsolidated employee headcount by year (e.g., { "2022": 150, "2023": 175 }). See Section 12.3.
EmployeesUnconsolidatedFinancialsTimeSeriesOmitted when nullUnconsolidated (parent only) employee headcount by year.
HasForeignUltimateParentbooleanAlwaystrue if the ultimate parent is in a different country.
HasGroupStructurebooleanAlwaystrue if the company belongs to a corporate group.
Keywordsstring[]Omitted when nullKeywords/tags associated with the company (e.g., ["software", "cloud", "SaaS"]).
PrivateEquityOwnerstringOmitted when nullName of the private equity owner, if applicable.
WebsiteSummarystringOmitted when nullSummary extracted from the company's website.
UltimateParentOrgNostringOmitted when nullOrganisation number of the ultimate parent company.
UltimateParentCompanyNamestringOmitted when nullName of the ultimate parent company.
URLstringOmitted when nullCompany website URL.
AdditionalUrlsstring[]Omitted when nullAdditional website URLs.

MinifiedInfo

Lightweight summary returned when MinifiedSearch = true. Ideal for delta synchronization — compare the *UpdatedAt timestamp fields (e.g., CompanyInfoUpdatedAt, FinancialsUpdatedAt) against your local cache to detect changes since your last sync.

FieldTypeConditionDescription
Valu8IdintegerAlwaysUnique Valu8 identifier.
OrgNostringOmitted when nullOrganisation number.
CompanyNamestringOmitted when nullCompany name.
CountryCodestringOmitted when nullISO country code.
OperationalStatusintegerOmitted when 0Operational status code. See Section 13.1.
LastFiscalYearEnddatetimeOmitted when nullEnd date of the last fiscal year (ISO 8601).
LocalCurrencyCodestringOmitted when nullLocal currency code (e.g., "SEK").
BeneficialOwnerUpdatedAtdatetimeOmitted when nullWhen UBO data was last updated.
CompanyInfoUpdatedAtdatetimeOmitted when nullWhen company info was last updated.
FinancialsUpdatedAtdatetimeOmitted when nullWhen financials were last updated.
KeyPeopleUpdatedAtdatetimeOmitted when nullWhen key people data was last updated.
OwnersUpdatedAtdatetimeOmitted when nullWhen ownership data was last updated.
ContentUpdatedAtdatetimeOmitted when nullWhen overall content was last updated.
RelationsUpdatedAtdatetimeOmitted when nullWhen relations data was last updated.
UltimateParentOrgNostringOmitted when nullUltimate parent's organisation number.
UrlstringOmitted when nullCompany website URL.

MetaData

Context for interpreting financial data and tracking data freshness.

FieldTypeConditionDescription
LocalCurrencyCodestringOmitted when nullThe company's domestic currency (e.g., "SEK").
CurrentCurrencyCodestringAlwaysCurrency used for Financials and UnconsolidatedFinancials in this response. Matches your Currency request parameter.
FinancialFigureScalestringAlwaysScale divisor applied to financial figures. See Section 13.6.
FiscalYearLengthintegerOmitted when 0Fiscal year length in months (typically 12).
LastFiscalYearEnddatetimeOmitted when defaultEnd date of the most recent fiscal year (ISO 8601).
LastReportQuarterdatetimeOmitted when defaultEnd date of the most recent quarterly report.
BeneficialOwnerUpdatedAtdatetimeOmitted when defaultWhen UBO data was last updated.
CompanyInfoUpdatedAtdatetimeOmitted when defaultWhen company info was last updated.
FinancialsUpdatedAtdatetimeOmitted when defaultWhen primary financials were last updated.
SecondaryFinancialsUpdatedAtdatetimeOmitted when defaultWhen secondary financials were last updated.
KeyPeopleUpdatedAtdatetimeOmitted when defaultWhen key people data was last updated.
OwnersUpdatedAtdatetimeOmitted when defaultWhen ownership data was last updated.
ContentUpdatedAtdatetimeOmitted when defaultWhen overall content (including relations) was last updated.
RelationsUpdatedAtdatetimeOmitted when defaultWhen relationship data was last updated.
GeneratedAtdatetimeOmitted when defaultWhen the data schema was last updated. Not a content change.

LinkedIn

Company profile data from LinkedIn. All fields are conditionally included.

FieldTypeConditionDescription
NamestringOmitted when nullCompany name on LinkedIn.
DescriptionstringOmitted when nullCompany description from LinkedIn.
IndustrystringOmitted when nullIndustry as listed on LinkedIn.
ClassificationstringOmitted when nullLinkedIn industry classification label.
ClassificationCodestringOmitted when nullLinkedIn industry classification code.
CompanyTypestringOmitted when nullType on LinkedIn (e.g., "Public Company", "Privately Held").
CompanyFoundedstringOmitted when nullYear the company was founded.
CompanyWebsitestringOmitted when nullWebsite URL from LinkedIn.
CountrystringOmitted when nullCountry on LinkedIn profile.
Addressesstring[]Omitted when nullOffice addresses from LinkedIn.
NumberOfEmployeesintegerOmitted when nullEmployee count from LinkedIn.
SizeRangestringOmitted when nullEmployee size range (e.g., "51-200 employees").
FollowersintegerOmitted when nullNumber of LinkedIn followers.
Keywordsstring[]Omitted when nullSpecialties/keywords from LinkedIn.
SourceUrlstringOmitted when nullURL to the LinkedIn company page.

Financial Data Structures

Financial data uses a three-level nested dictionary structure (FinancialsCategoriesFinancialsDataFinancialsTimeSeries) enabling flexible representation across years and statement categories. Figures are returned in the currency specified by your Currency request parameter. Consolidated vs unconsolidated blocks correspond to ConsolidationType.

Example shape:

"Financials": {
  "BalanceSheet": {
    "TotalAssets": { "2022": 1500000, "2023": 1750000 },
    "TotalEquity": { "2022": 800000, "2023": 900000 }
  },
  "ProfitAndLoss": {
    "NetSales": { "2022": 500000, "2023": 550000 },
    "EBITDA": { "2022": 75000, "2023": 82000 }
  }
}

FinancialsCategories

Structure: { "CategoryName": FinancialsData }

Each key is a financial statement category:

Category KeyDescription
BalanceSheetAssets, liabilities, and equity.
ProfitAndLossRevenue, costs, and profit/loss (income statement).
CashFlowCash flow statement.
KeyFinancialRatioCalculated financial ratios and KPIs.
UltimateParentFinancial data at the ultimate parent level.
OtherFinancialItemsOther financial items (charges, share issues, fiscal metadata).

Line-item keys within each category are listed in Section 12.2. Not every company includes every category or line item — availability depends on country, reporting, and your subscription.

FinancialsData

Structure: { "LineItemKey": FinancialsTimeSeries }

Each key is a financial line item within its parent category. Keys use PascalCase and match the names in the tables below. The same key names are used as search/sort parameters (often with a _Year_{year} suffix when filtering by year).

BalanceSheet line items

KeyDescription
AccountsPayableTrade and other accounts payable.
AccountReceivablesTrade and other receivables.
CashEquivalentsCash and cash equivalents.
CurrentFinancialAssetsCurrent financial assets.
CurrentFinancialLiabilitiesCurrent financial liabilities.
GoodwillAndIntangibleAssetsGoodwill and intangible assets.
InventoriesInventories.
MinorityInterestMinority (non-controlling) interest.
NonCurrentFinancialLiabilitiesNon-current financial liabilities.
NonCurrentFinancialReceivablesNon-current financial receivables.
OtherCurrentOperatingAssetsOther current operating assets.
OtherCurrentOperatingLiabilitiesOther current operating liabilities.
OtherNonCurrentOperatingAssetsOther non-current operating assets.
OtherNonCurrentOperatingLiabilitiesOther non-current operating liabilities.
PostEmployeeLiabilitiesPost-employment benefit liabilities.
ProfitAndLossAccountRetained earnings / profit and loss account.
PropertyPlantAndEquipmentProperty, plant, and equipment.
ShareCapitalShare capital.
ShareholderEquityShareholder equity.
TotalAssetsTotal assets.
TotalCurrentAssetsTotal current assets.
TotalCurrentLiabilitiesTotal current liabilities.
TotalEquityTotal equity.
TotalNonCurrentAssetsTotal non-current assets.

ProfitAndLoss line items

KeyDescription
AdministrativeExpensesAdministrative expenses.
AmortisationAmortisation.
CostOfSalesCost of sales.
DepreciationDepreciation.
DepreciationAmortisationDepreciation and amortisation combined.
EBITEarnings before interest and taxes.
EBITAEarnings before interest, taxes, and amortisation.
EBITDEarnings before interest, taxes, and depreciation.
EBITDAEarnings before interest, taxes, depreciation, and amortisation.
FinancialExpensesFinancial expenses.
FinancialIncomeFinancial income.
GrossProfitGross profit.
NetFinancialIncomeOrExpensesNet financial income or expenses.
NetProfitNet profit.
NetSalesNet sales / revenue.
OtherExternalExpensesOther external expenses.
PersonelExpensesPersonnel expenses.
PreTaxProfitProfit before tax.
RawMaterialsAndConsumablesRaw materials and consumables.
SellingExpensesSelling expenses.
TotalRevenueTotal revenue.

CashFlow line items

KeyDescription
CashFlowBeforeFinancialActivitesCash flow before financial activities.
CashflowOperatingCash flow from operating activities.
NetChangeInCashNet change in cash.

KeyFinancialRatio line items

KeyDescription
Cagr3YearsNetSales3-year CAGR of net sales.
Cagr5YearsNetSales5-year CAGR of net sales.
Cagr3YearsEBIT3-year CAGR of EBIT.
Cagr5YearsEBIT5-year CAGR of EBIT.
Cagr3YearsGrossProfit3-year CAGR of gross profit.
Cagr5YearsGrossProfit5-year CAGR of gross profit.
Cagr3YearsEBITDA3-year CAGR of EBITDA.
Cagr5YearsEBITDA5-year CAGR of EBITDA.
Cagr3YearsNumberOfEmployees3-year CAGR of employee count.
Cagr5YearsNumberOfEmployees5-year CAGR of employee count.
Cagr3YearsTotalAssets3-year CAGR of total assets.
Cagr5YearsTotalAssets5-year CAGR of total assets.
Cagr3YearsTotalCurrentAssets3-year CAGR of total current assets.
Cagr5YearsTotalCurrentAssets5-year CAGR of total current assets.
DividendsDividends.
DPSDividends per share.
EVEnterprise value.
EBITDAGrowthEBITDA growth.
EBITDAMarginEBITDA margin.
EBITGrowthEBIT growth.
EBITMarginEBIT margin.
EmployeeGrowthEmployee growth.
EPSEarnings per share.
EVToEBITEV / EBIT.
EVToEBITDAEV / EBITDA.
EVToNetSalesEV / net sales.
EquityRatioEquity ratio.
GrossProfitGrowthGross profit growth.
GrossProfitMarginGross profit margin.
MarketCapMarket capitalisation.
NetCapexNet capital expenditure.
NetDebtNet debt.
NetDebtToEquityNet debt to equity.
NetDebtToEBITNet debt to EBIT.
NetDebtToEBITDANet debt to EBITDA.
NetProfitGrowthNet profit growth.
NetProfitMarginNet profit margin.
NetSalesGrowthNet sales growth.
PEPrice / earnings ratio.
PreTaxProfitMarginPre-tax profit margin.
PriceToBookValuePrice to book value.
RetainedEarningsRetained earnings.
ReturnOnEquityReturn on equity.
RRKRisk rating class (RRK).

UltimateParent line items

KeyDescription
UltimateParentDeprAmoUltimate parent depreciation and amortisation.
UltimateParentEBITUltimate parent EBIT.
UltimateParentEBITDAUltimate parent EBITDA.
UltimateParentNetSalesUltimate parent net sales.

OtherFinancialItems line items

KeyDescription
ChargesOutstandingOutstanding charges.
FiscalYearEndMonthFiscal year end month.
FiscalYearLengthFiscal year length (months).
ShareIssuePriceEarningsShare issue price / earnings.
ShareIssuePriceEquityShare issue price / equity.
ShareIssuePriceSalesShare issue price / sales.
TotalChargesTotal charges.
TotalShareIssueAmountTotal share issue amount.

FinancialsTimeSeries

Structure: { year: value }

Each key is a fiscal year (integer in JSON), each value is a numeric figure (double). A line item may be omitted entirely when no values exist for any year.


Enumeration Reference

Integer codes are returned as numbers in JSON. String codes are returned as text. Use GET /v2/companies/search-parameters for the full set of filterable values and code dictionaries available to your subscription (country codes, operational status, legal form, and more).

OperationalStatus

Used in BasicDetails.OperationalStatus and MinifiedInfo.OperationalStatus.

ValueNameDescription
10ActiveCurrently active and operating.
20InactiveSleepingInactive or dormant.
21SleepingDormant/sleeping.
30UnderLiquidationCurrently being liquidated.
31LiquidatedFully liquidated.
40UnderBankruptcyBankruptcy proceedings ongoing.
41BankruptDeclared bankrupt.
50DissolvedDissolved — no longer exists.
60MergedMerged into another entity.
70UnknownStatus unknown.
99UnregisteredNot registered.
100DissolvingIn the process of being dissolved.
101DissolvingByForceBeing forcibly dissolved by authorities.
102DissolvedByForceForcibly dissolved by authorities.
103UnderReconstructionUndergoing financial reconstruction.

LegalForm

Used in BasicDetails.LegalForm

ValueNameDescription
1Limited companyLimited liability company (AB, Ltd, GmbH).
2Private business (gov. ctrl)Government-controlled private business.
3Foreign companyForeign-registered company.
4BankBanking institution.
5Sole proprietorshipIndividually owned business.
6General partnershipPartnership with unlimited liability.
7SocietySociety or association.
8FoundationFoundation or endowment.
9Housing companyHousing cooperative.
10State/county companyGovernment-owned company.
11Religious organisationReligious organisation.
12Insurance companyInsurance company.
13CollaborationsCollaborative business arrangement.
20OtherOther legal forms.
99UnknownLegal form not known.
100Death nestEstate of a deceased person.
101Limited partnershipPartnership with general and limited partners.
102Shipping partnershipShipping partnership.
103CorporationCorporation (US/international).
104Business foundationBusiness-oriented foundation.
105AssociationAssociation.
106CooperativeCooperative business.
107Volunteer associationNon-profit association.
108Association or LLCEntity that may be either form.
109Limited liability companyLLC.
110Limited association companyLimited association company.
111State administrationGovernmental administrative body.
112European financial company groupEuropean Economic Interest Grouping (financial).
113SCE companyEuropean Cooperative Society (SCE).
114Special financial businessSpecialized financial services.
115PartnershipGeneral partnership.
120Sub-divisionDivision or branch.
130European Economic Interest GroupEEIG.
140Limited liability stock companyStock corporation with limited liability.
141Open trading companyOpen trading company.
142Statutory corporationCorporation established by statute.
143Professional partnershipPartnership of professionals.
144Independent subsidiaryIndependently operating subsidiary.
145Dependent subsidiaryDependent subsidiary.
146Societas Cooperativa EuropaeaEuropean Cooperative Society.
147Societas EuropaeaEuropean public limited company (SE).
148Freier BerufFreelance/liberal profession (German).
149Non-profit stock companyNon-profit stock company.
150Entrepreneurial limited companySmall-scale limited company (e.g., UG).

CompanyType (CompanyCategory)

Used in BasicDetails.CompanyType and GroupStructureCompany.CompanyType (group structure endpoint).

ValueNameDescription
1ParentGroupTop-level parent of a consolidated group.
2SubGroupSub-group parent within a larger group.
4UnconsolidatingUltimateParentUltimate parent that does not consolidate subsidiaries.
5UnconsolidatingSubsidiarySubsidiary not consolidated into parent accounts.
7IndependentNot part of a corporate group.

IndustryItemType

Used in IndustryCode.IndustryCodes[].Type and IndustryCode.WeightedGroupIndustryCodes[].Type.

ValueNameDescription
NaceNACEEU industry classification (Nomenclature statistique des activités économiques).

ListingType

Used in BasicDetails.ListingType. Derived from whether the company is flagged as listed on a stock exchange.

ValueDescription
ListedCompany is listed (public).
PrivateCompany is not listed (private).

FinancialFigureScale

Used in MetaData.FinancialFigureScale. Indicates the unit scale for numeric values in Financials and UnconsolidatedFinancials — apply the scale when interpreting amounts.

ValueDescription
NoneDefault. Figures are absolute values (no scaling).
No scaleSame as absolute / no scaling.
ThousandsFigures are expressed in thousands.
MillionsFigures are expressed in millions.
BillionsFigures are expressed in billions.

When FinancialFigureScale is not None, multiply displayed figures by the scale to obtain absolute currency amounts.

SearchableLegalForm

Subset of LegalForm values commonly exposed as the LegalForm search filter. Other legal form codes may still appear in responses.

ValueNameDescription
1Limited_corporationLimited liability company.
20OtherOther legal forms.

ConsolidationType

Internal classification for financial statement consolidation. Helps interpret which response blocks apply:

ValueNameDescription
0NoTypeNo consolidation type specified.
1ConsolidatedGroup-consolidated figures — returned in Financials.
2UnConsolidatedParent-only figures — returned in UnconsolidatedFinancials.

JSON Serialization Behavior

To minimize response size, the following rules apply:

Value TypeOmission Rule
null strings/objectsOmitted from response
0 (integer/double)Omitted from response
Default DateTime (0001-01-01)Omitted from response
null nullable types (int?, DateTime?)Omitted from response
Always-present fieldsIncluded regardless of value: Valu8Id, HasReportedMissingUBO, HasForeignUltimateParent, HasGroupStructure, IndustryCode, CurrentCurrencyCode, FinancialFigureScale

The absence of a field means "no data available" — not an error.


Companion Endpoint: Search Parameters

Endpoint: GET /v2/companies/search-parameters

Returns all available search parameter names, their data types, filtering controls, sortability, and value dictionaries (e.g., valid country codes, operational status codes). Use this endpoint to dynamically build search forms or validate parameters before calling the search endpoint.