---
title: "Search for companies"
method: POST
path: "/v1/search/company"
tags: ["v1"]
---

# Search for companies

`POST /v1/search/company`

## Request body

- CompanySearchRequest
  - `query` CompanySearchRequestQuery
    - `value` string, required — Search query to filter companies.
  - `filters` CompanySearchFilter[] — Filters to filter companies.
    - `value` string
    - `min` string
    - `max` string
    - `values` string[]
    - `keywords` string[]
    - `field` 'status' | 'legal_form' | 'register_number' | 'register_court' | 'register_type' | 'city' | 'active' | 'incorporated_at' | 'zip' | 'address' | 'balance_sheet_total' | 'revenue' | 'cash' | 'employees' | 'equity' | 'real_estate' | 'materials' | 'pension_provisions' | 'salaries' | 'taxes' | 'other_taxes' | 'commission_income' | 'commission_expense' | 'liabilities' | 'capital_reserves' | 'active_accruals' | 'passive_accruals' | 'fixed_assets' | 'current_assets' | 'receivables' | 'trade_receivables' | 'inventory' | 'provisions' | 'bank_debt' | 'trade_payables' | 'tangible_assets' | 'financial_assets' | 'retained_earnings' | 'profit_carryforward' | 'other_provisions' | 'shareholder_liabilities' | 'operating_depreciation' | 'financial_depreciation' | 'other_operating_income' | 'interest_income' | 'interest_expense' | 'other_liabilities' | 'financial_debt' | 'intangible_assets' | 'other_operating_expenses' | 'affiliated_liabilities' | 'net_income' | 'parent_net_income' | 'income_before_tax' | 'income_after_tax' | 'ebit' | 'ebitda' | 'industry_codes' | 'capital_amount' | 'capital_currency' | 'number_of_owners' | 'has_sole_owner' | 'has_representative_owner' | 'is_family_owned' | 'youngest_owner_age' | 'purpose' | 'has_lei' | 'lei' | 'had_insolvency' | 'has_open_insolvency' | 'insolvency_stage' | 'insolvency_opened_at', required
  - `location` CompanySearchLocationFilter
    - `longitude` number, required — Longitude to filter on.
    - `latitude` number, required — Latitude to filter on.
    - `radius` number — Radius in kilometers to filter on. Example: 10
  - `pagination` SearchRequestPagination
    - `page` integer — Page number to return.
    - `per_page` integer — Number of results per page.

## Response `200`

Successful search operation

- CompanySearchResponse
  - `results` CompanySearchResponseItem[], required — List of companies matching the search criteria.
    - `company_id` string, required — Unique company identifier. Example: DE-HRB-F1103-267645
    - `name` string, required — Official registered company name. Example: "Max Mustermann GmbH"
    - `country` string, nullable, required — Country where the company is registered using ISO 3166-1 alpha-2 code. Example: "DE" for Germany
    - `register_number` string, required — Registration number in the company register. Example: "230633"
    - `register_type` 'HRB' | 'HRA' | 'PR' | 'GnR' | 'VR', required — Type of company register where the entity is recorded. Common types: - HRB: Commercial Register B (limited liability companies, stock corporations) - HRA: Commercial Register A (partnerships, sole proprietorships) - PR: Partnership Register - GnR: Cooperative Register - VR: Association Register
    - `register_court` string, required — Court where the company is registered. Example: "Berlin (Charlottenburg)"
    - `active` boolean, required — Company status - true if active, false if inactive.
    - `legal_form` 'ag' | 'eg' | 'ek' | 'ev' | 'ewiv' | 'foreign' | 'gbr' | 'ggmbh' | 'gmbh' | 'kg' | 'kgaa' | 'unknown' | 'llp' | 'municipal' | 'ohg' | 'se' | 'ug', required — Legal form of the company. Common German legal forms: - gmbh: Gesellschaft mit beschränkter Haftung (Limited Liability Company) - ag: Aktiengesellschaft (Stock Corporation) - ug: Unternehmergesellschaft (Entrepreneurial Company with limited liability) - ohg: Offene Handelsgesellschaft (General Partnership) - kg: Kommanditgesellschaft (Limited Partnership) - ev: Eingetragener Verein (Registered Association)
    - `address` CompanySearchAddress, required
      - `street` string — Street name and number. Example: "Musterstraße 1"
      - `city` string, required — City or locality name. Example: "Berlin"
      - `postal_code` string — Postal or ZIP code. Example: "10117"
      - `country` string, required — Country of the address using ISO 3166-1 alpha-2 code. Example: "DE" for Germany
      - `extra` string — Additional address information such as c/o or attention line. Example: "c/o Max Mustermann"
      - `formatted_value` string, required — Complete address formatted as a single string. Example: "Musterstraße 1, 10117 Berlin"
    - `purpose` string, nullable, required — Current official business purpose of the company, taken from the search index.
  - `pagination` Pagination, required
    - `page` integer, required — Current page number.
    - `per_page` integer, required — Number of results per page.
    - `total_pages` integer, required — Total number of pages.
    - `total_results` integer, required — Total number of results.

## Other responses

- `400` — Bad Request - Invalid parameters provided
- `401` — Unauthorized - Authentication required
- `402` — Payment Required - Insufficient credits for this request
- `429` — Too Many Requests - Rate limit exceeded
- `500` — Internal Server Error - An error occurred while processing the request

---

[API](https://skmtc.net/oregister/apis/openregister-api.md) · [All operations](https://skmtc.net/oregister/apis/openregister-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/oregister/openregister-api/versions/d1fcaf6d6ca0/schema)
