Find managing directors and shareholders
Who represents a company and who owns it.
Three features show the people behind a company: the management, the shareholders and the beneficial owners. For a single person, you then fetch their person profile.
Fetch the management
The feature related_persons (Management) returns all people registered for the company in the register. current holds the current ones, past the former ones, each with start and end. As an example, we request Hetzner Online GmbH, Ansbach HRB 6089, by its entity_id.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: YOUR_API_KEY" \ --data-urlencode 'q=94eb910fef13f94585c48c263fa446d4' \ --data-urlencode 'feature=related_persons'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "YOUR_API_KEY"}, params={ "q": "94eb910fef13f94585c48c263fa446d4", "feature": ["related_persons"], }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "94eb910fef13f94585c48c263fa446d4"); url.searchParams.append("feature", "related_persons"); const response = await fetch(url, { headers: { "x-api-key": "YOUR_API_KEY" }, }); const data = await response.json();
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "related_persons": {5 "current": [6 {7 "entity_id": "ea3a1670232611a992727ed067216d07",8 "label": "MANAGING_DIRECTOR",9 "role": {10 "en": {11 "long": "Managing Director",12 "short": "MD"13 },14 "de": {15 "long": "Geschäftsführer",16 "short": "GF"17 }18 },19 "name": "Paul Musterwald",20 "start_date": "2019-01-04",21 "end_date": null,22 "birth_date": "1989-07-18",23 "name_parts": {24 "given": "Paul",25 "family": "Musterwald",26 "maiden": null,27 "canonical_name": "Musterwald, Paul",28 "previous_names": null29 },30 "location": {31 "home": {32 "city": "Exempelingen i. Bay."33 }34 },35 "organization_representation_scheme": {36 "current": [37 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."38 ],39 "history": [40 {41 "value": [42 "Ist nur ein Vorstandsmitglied bestellt, so vertritt es die Gesellschaft allein. Sind mehrere Vorstandsmitglieder bestellt, so wird die Gesellschaft durch zwei Vorstandsmitglieder oder durch ein Vorstandsmitglied gemeinsam mit einem Prokuristen vertreten."43 ],44 "effective_from": "2002-10-15",45 "effective_to": "2015-07-28"46 },47 {48 "value": [49 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."50 ],51 "effective_from": "2015-07-28",52 "effective_to": null53 }54 ]55 },56 "role_representation_scheme": {57 "current": [58 "einzelvertretungsberechtigt."59 ],60 "history": [61 {62 "value": [63 "einzelvertretungsberechtigt."64 ],65 "effective_from": "2019-01-04",66 "effective_to": null67 }68 ]69 }70 },71 {72 "entity_id": "dd7e94b41f78de4195cc70c6b0f732f3",73 "label": "MANAGING_DIRECTOR",74 "role": {75 "en": {76 "long": "Managing Director",77 "short": "MD"78 },79 "de": {80 "long": "Geschäftsführer",81 "short": "GF"82 }83 },84 "name": "Jan Musterhuber",85 "start_date": "2019-01-04",86 "end_date": null,87 "birth_date": "1955-11-06",88 "name_parts": {89 "given": "Jan",90 "family": "Musterhuber",91 "maiden": null,92 "canonical_name": "Musterhuber, Jan",93 "previous_names": null94 },95 "location": {96 "home": {97 "city": "Probeingen"98 }99 },100 "organization_representation_scheme": {101 "current": [102 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."103 ],104 "history": [105 {106 "value": [107 "Ist nur ein Vorstandsmitglied bestellt, so vertritt es die Gesellschaft allein. Sind mehrere Vorstandsmitglieder bestellt, so wird die Gesellschaft durch zwei Vorstandsmitglieder oder durch ein Vorstandsmitglied gemeinsam mit einem Prokuristen vertreten."108 ],109 "effective_from": "2002-10-15",110 "effective_to": "2015-07-28"111 },112 {113 "value": [114 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."115 ],116 "effective_from": "2015-07-28",117 "effective_to": null118 }119 ]120 },121 "role_representation_scheme": {122 "current": [123 "einzelvertretungsberechtigt."124 ],125 "history": [126 {127 "value": [128 "einzelvertretungsberechtigt."129 ],130 "effective_from": "2019-01-04",131 "effective_to": null132 }133 ]134 }135 },136 {137 "entity_id": "08ed5f967956831ca6588930fd2693ed",138 "label": "MANAGING_DIRECTOR",139 "role": {140 "en": {141 "long": "Managing Director",142 "short": "MD"143 },144 "de": {145 "long": "Geschäftsführer",146 "short": "GF"147 }148 },149 "name": "Max Felix Mustermann",150 "start_date": "2015-07-28",151 "end_date": null,152 "birth_date": "1976-01-15",153 "name_parts": {154 "given": "Max Felix",155 "family": "Mustermann",156 "maiden": null,157 "canonical_name": "Mustermann, Max Felix",158 "previous_names": null159 },160 "location": {161 "home": {162 "city": "Musterheim"163 }164 },165 "organization_representation_scheme": {166 "current": [167 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."168 ],169 "history": [170 {171 "value": [172 "Ist nur ein Vorstandsmitglied bestellt, so vertritt es die Gesellschaft allein. Sind mehrere Vorstandsmitglieder bestellt, so wird die Gesellschaft durch zwei Vorstandsmitglieder oder durch ein Vorstandsmitglied gemeinsam mit einem Prokuristen vertreten."173 ],174 "effective_from": "2002-10-15",175 "effective_to": "2015-07-28"176 },177 {178 "value": [179 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."180 ],181 "effective_from": "2015-07-28",182 "effective_to": null183 }184 ]185 },186 "role_representation_scheme": {187 "current": [188 "einzelvertretungsberechtigt; mit der Befugnis, im Namen der Gesellschaft mit sich im eigenen Namen oder als Vertreter eines Dritten Rechtsgeschäfte abzuschließen."189 ],190 "history": [191 {192 "value": [193 "einzelvertretungsberechtigt; mit der Befugnis, im Namen der Gesellschaft mit sich im eigenen Namen oder als Vertreter eines Dritten Rechtsgeschäfte abzuschließen."194 ],195 "effective_from": "2015-07-28",196 "effective_to": null197 }198 ]199 }200 }201 ],202 "past": [203 {204 "entity_id": "ea3a1670232611a992727ed067216d07",205 "label": "PROCURA",206 "role": {207 "en": {208 "long": "Procura",209 "short": "Procura"210 },211 "de": {212 "long": "Prokura",213 "short": "Prokura"214 }215 },216 "name": "Paul Musterwald",217 "start_date": "2015-07-28",218 "end_date": "2019-01-04",219 "birth_date": "1989-07-18",220 "name_parts": {221 "given": "Paul",222 "family": "Musterwald",223 "maiden": null,224 "canonical_name": "Musterwald, Paul",225 "previous_names": null226 },227 "location": {228 "home": {229 "city": "Exempelingen i. Bay."230 }231 },232 "organization_representation_scheme": {233 "latest": [234 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."235 ],236 "history": [237 {238 "value": [239 "Ist nur ein Vorstandsmitglied bestellt, so vertritt es die Gesellschaft allein. Sind mehrere Vorstandsmitglieder bestellt, so wird die Gesellschaft durch zwei Vorstandsmitglieder oder durch ein Vorstandsmitglied gemeinsam mit einem Prokuristen vertreten."240 ],241 "effective_from": "2002-10-15",242 "effective_to": "2015-07-28"243 },244 {245 "value": [246 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."247 ],248 "effective_from": "2015-07-28",249 "effective_to": null250 }251 ]252 },253 "role_representation_scheme": {254 "latest": [255 "Gesamtprokura gemeinsam mit einem anderen Prokuristen:"256 ],257 "history": [258 {259 "value": [260 "Gesamtprokura gemeinsam mit einem anderen Prokuristen:"261 ],262 "effective_from": "2015-07-28",263 "effective_to": "2019-01-04"264 }265 ]266 }267 },268 {269 "entity_id": "dd7e94b41f78de4195cc70c6b0f732f3",270 "label": "PROCURA",271 "role": {272 "en": {273 "long": "Procura",274 "short": "Procura"275 },276 "de": {277 "long": "Prokura",278 "short": "Prokura"279 }280 },281 "name": "Jan Musterhuber",282 "start_date": "2015-07-28",283 "end_date": "2019-01-04",284 "birth_date": "1955-11-06",285 "name_parts": {286 "given": "Jan",287 "family": "Musterhuber",288 "maiden": null,289 "canonical_name": "Musterhuber, Jan",290 "previous_names": null291 },292 "location": {293 "home": {294 "city": "Probeingen"295 }296 },297 "organization_representation_scheme": {298 "latest": [299 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."300 ],301 "history": [302 {303 "value": [304 "Ist nur ein Vorstandsmitglied bestellt, so vertritt es die Gesellschaft allein. Sind mehrere Vorstandsmitglieder bestellt, so wird die Gesellschaft durch zwei Vorstandsmitglieder oder durch ein Vorstandsmitglied gemeinsam mit einem Prokuristen vertreten."305 ],306 "effective_from": "2002-10-15",307 "effective_to": "2015-07-28"308 },309 {310 "value": [311 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."312 ],313 "effective_from": "2015-07-28",314 "effective_to": null315 }316 ]317 },318 "role_representation_scheme": {319 "latest": [320 "Gesamtprokura gemeinsam mit einem anderen Prokuristen:"321 ],322 "history": [323 {324 "value": [325 "Gesamtprokura gemeinsam mit einem anderen Prokuristen:"326 ],327 "effective_from": "2015-07-28",328 "effective_to": "2019-01-04"329 }330 ]331 }332 },333 {334 "entity_id": "08ed5f967956831ca6588930fd2693ed",335 "label": "BOARD",336 "role": {337 "en": {338 "long": "Board Member",339 "short": "Board"340 },341 "de": {342 "long": "Vorstandsmitglied",343 "short": "Vorstand"344 }345 },346 "name": "Max Felix Mustermann",347 "start_date": "2002-10-15",348 "end_date": "2015-07-28",349 "birth_date": "1976-01-15",350 "name_parts": {351 "given": "Max Felix",352 "family": "Mustermann",353 "maiden": null,354 "canonical_name": "Mustermann, Max Felix",355 "previous_names": null356 },357 "location": {358 "home": {359 "city": "Musterheim"360 }361 },362 "organization_representation_scheme": {363 "latest": [364 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."365 ],366 "history": [367 {368 "value": [369 "Ist nur ein Vorstandsmitglied bestellt, so vertritt es die Gesellschaft allein. Sind mehrere Vorstandsmitglieder bestellt, so wird die Gesellschaft durch zwei Vorstandsmitglieder oder durch ein Vorstandsmitglied gemeinsam mit einem Prokuristen vertreten."370 ],371 "effective_from": "2002-10-15",372 "effective_to": "2015-07-28"373 },374 {375 "value": [376 "Ist nur ein Geschäftsführer bestellt, so vertritt er die Gesellschaft allein. Sind mehrere Geschäftsführer bestellt, so wird die Gesellschaft durch zwei Geschäftsführer oder durch einen Geschäftsführer gemeinsam mit einem Prokuristen vertreten."377 ],378 "effective_from": "2015-07-28",379 "effective_to": null380 }381 ]382 },383 "role_representation_scheme": {384 "latest": [385 "einzelvertretungsberechtigt; mit der Befugnis, im Namen der Gesellschaft mit sich im eigenen Namen oder als Vertreter eines Dritten Rechtsgeschäfte abzuschließen"386 ],387 "history": [388 {389 "value": [390 "einzelvertretungsberechtigt; mit der Befugnis, im Namen der Gesellschaft mit sich im eigenen Namen oder als Vertreter eines Dritten Rechtsgeschäfte abzuschließen"391 ],392 "effective_from": "2002-10-15",393 "effective_to": "2015-07-28"394 }395 ]396 }397 }398 ]399 },400 "meta": {401 "request_credit_cost": 7,402 "credits_remaining": 145403 }404}
The role is in label in machine-readable form and in role.de.long as text. The most common values:
| label | Meaning |
|---|---|
| MANAGING_DIRECTOR | Managing director (Geschäftsführer) |
| BOARD | Member of the management board (Vorstand) |
| PROCURA | Holder of Prokura (Prokurist); Prokura is the power of attorney entered in the register |
| FULLY_LIABLE_PARTNER | General partner with personal liability (Komplementär) |
| LIMITED_PARTNER | Limited partner (Kommanditist) |
| LIQUIDATOR | Liquidator of a company being wound up |
| OWNER | Owner of a sole proprietorship |
All values are listed under Values and codes.
How a person may represent the company is in role_representation_scheme, for example “einzelvertretungsberechtigt” (sole power of representation). The rule for the whole company is in organization_representation_scheme.
related_persons costs 2 credits, but only when the API finds people.
realtime_mode=handelsregister-default), the currently registered people come straight from the Handelsregister (commercial register), and you don't pay for the feature. Realtime costs 10 credits as soon as the fetch succeeds, no matter what it returns. These entries have their own entity_ids and no start date. If the live fetch fails, the API returns the stored data. _realtime_mode.status is then not success, and Realtime is not charged. If the request takes too long, you get HTTP 408 at no cost; try again later.
Fetch the shareholders
The feature shareholders (Shareholders) reads the shareholder list (Gesellschafterliste) that every GmbH files with the register. You get each shareholder with their contribution and share. Earlier lists are under history.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: YOUR_API_KEY" \ --data-urlencode 'q=Ansbach HRB 6089' \ --data-urlencode 'feature=shareholders'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "YOUR_API_KEY"}, params={ "q": "Ansbach HRB 6089", "feature": ["shareholders"], }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "Ansbach HRB 6089"); url.searchParams.append("feature", "shareholders"); const response = await fetch(url, { headers: { "x-api-key": "YOUR_API_KEY" }, }); const data = await response.json();
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "shareholders": {5 "total_capital": {6 "amount": 50000,7 "currency": "EUR"8 },9 "entries": [10 {11 "shareholder": {12 "entity_id": "dd1cfcd3a25b5a63d549d768e2fcaaaf",13 "entity_name": "ENSoXX GmbH",14 "address": "Gunzenhausen",15 "country_code": "DEU",16 "registration_reference": "AG Ansbach HRB 6105"17 },18 "contribution": {19 "amount": 47250,20 "currency": "EUR"21 },22 "contribution_ratio": 0.945,23 "role": {24 "label": "SHAREHOLDER",25 "en": {26 "long": "Shareholder",27 "short": "Shareholder"28 },29 "de": {30 "long": "Gesellschafter",31 "short": "Gesellschafter"32 }33 }34 },35 {36 "shareholder": {37 "entity_id": "08ed5f967956831ca6588930fd2693ed",38 "first_name": "Max Felix",39 "last_name": "Mustermann",40 "birth_date": "1976-01-15",41 "address": "Musterweg 36 in 36077 Musterheim"42 },43 "contribution": {44 "amount": 2750,45 "currency": "EUR"46 },47 "contribution_ratio": 0.055,48 "role": {49 "label": "SHAREHOLDER",50 "en": {51 "long": "Shareholder",52 "short": "Shareholder"53 },54 "de": {55 "long": "Gesellschafter",56 "short": "Gesellschafter"57 }58 }59 }60 ],61 "history": {62 "current_as_of": "2015-08-21",63 "past": [64 {65 "as_of": "2015-07-28",66 "data": {67 "total_capital": {68 "amount": 50000,69 "currency": "EUR"70 },71 "shareholders": [72 {73 "shareholder": {74 "entity_id": "08ed5f967956831ca6588930fd2693ed",75 "first_name": "Max",76 "last_name": "Mustermann",77 "birth_date": "1976-01-15",78 "address": "Musterweg 36 in 36077 Musterheim"79 },80 "contribution": {81 "amount": 50000,82 "currency": "EUR"83 },84 "contribution_ratio": 1,85 "role": {86 "label": "SHAREHOLDER",87 "en": {88 "long": "Shareholder",89 "short": "Shareholder"90 },91 "de": {92 "long": "Gesellschafter",93 "short": "Gesellschafter"94 }95 }96 }97 ]98 }99 }100 ]101 }102 },103 "meta": {104 "request_credit_cost": 10,105 "credits_remaining": 145106 }107}
contribution_ratio is the share as a fraction, 1 means 100%. It refers to the capital according to the shareholder list in total_capital. The registered capital is in the company profile under capital. In our example request, ENSoXX GmbH, Ansbach HRB 6105, holds 94.5% of Hetzner Online GmbH and one person holds the remaining 5.5%.
For a KG, the general partners (Komplementäre) and limited partners (Kommanditisten) are listed with their role in related_persons, sometimes also in shareholders. Stock corporations (AG) keep no public shareholder list, so shareholders usually stays empty there.
shareholders costs 5 credits, but only when the API finds shareholders.
With Max you get shareholders_deep (Deep Shareholders). It shows every filed list with percentage, nominal amount and the numbers of the shares. changes shows who joined, left or changed their share compared with the previous list.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: YOUR_API_KEY" \ --data-urlencode 'q=Ansbach HRB 6089' \ --data-urlencode 'feature=shareholders_deep'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "YOUR_API_KEY"}, params={ "q": "Ansbach HRB 6089", "feature": ["shareholders_deep"], }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "Ansbach HRB 6089"); url.searchParams.append("feature", "shareholders_deep"); const response = await fetch(url, { headers: { "x-api-key": "YOUR_API_KEY" }, }); const data = await response.json();
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "shareholders_deep": {5 "record": {6 "date": "2015-08-18",7 "source": "SHAREHOLDER_LIST"8 },9 "share_capital": {10 "value": 50000,11 "currency": "EUR",12 "basis": "REPORTED"13 },14 "entries": [15 {16 "holder": {17 "entity_id": "dd1cfcd3a25b5a63d549d768e2fcaaaf",18 "type": "ORGANIZATION",19 "name": "ENSoXX GmbH",20 "legal_form": "GmbH",21 "status": "ACTIVE",22 "city": "Gunzenhausen",23 "country": "DEU",24 "registration": {25 "court": "Ansbach",26 "register_type": "HRB",27 "register_number": "6105"28 },29 "registration_text": null30 },31 "role": "SHAREHOLDER",32 "ownership": {33 "percentage": 94.5,34 "percentage_basis": "REPORTED",35 "nominal_amount": {36 "value": 47250,37 "currency": "EUR"38 },39 "share_count": 47250,40 "share_ranges": [41 {42 "from": 1,43 "to": 47250,44 "count": 47250,45 "nominal_value": {46 "value": 1,47 "currency": "EUR"48 }49 }50 ]51 },52 "since": "2015-08-18",53 "since_basis": "ENTRY_RECORDED"54 },55 {56 "holder": {57 "entity_id": "08ed5f967956831ca6588930fd2693ed",58 "type": "PERSON",59 "name": "Max Felix Mustermann",60 "birth_date": "1976-01-15",61 "city": "Musterheim",62 "country": "DEU"63 },64 "role": "SHAREHOLDER",65 "ownership": {66 "percentage": 5.5,67 "percentage_basis": "REPORTED",68 "nominal_amount": {69 "value": 2750,70 "currency": "EUR"71 },72 "share_count": 2750,73 "share_ranges": [74 {75 "from": 47251,76 "to": 50000,77 "count": 2750,78 "nominal_value": {79 "value": 1,80 "currency": "EUR"81 }82 }83 ]84 },85 "since": "2015-07-16",86 "since_basis": "EARLIEST_RECORD"87 }88 ],89 "history": [90 {91 "record": {92 "date": "2015-07-16",93 "source": "SHAREHOLDER_LIST"94 },95 "share_capital": {96 "value": 50000,97 "currency": "EUR",98 "basis": "REPORTED"99 },100 "entries": [101 {102 "holder": {103 "entity_id": "08ed5f967956831ca6588930fd2693ed",104 "type": "PERSON",105 "name": "Max Mustermann",106 "birth_date": "1976-01-15",107 "city": null,108 "country": null109 },110 "role": "SHAREHOLDER",111 "ownership": {112 "percentage": 100,113 "percentage_basis": "REPORTED",114 "nominal_amount": {115 "value": 50000,116 "currency": "EUR"117 },118 "share_count": 50000,119 "share_ranges": [120 {121 "from": 1,122 "to": 50000,123 "count": 50000,124 "nominal_value": {125 "value": 1,126 "currency": "EUR"127 }128 }129 ]130 },131 "since": "2015-07-16",132 "since_basis": "EARLIEST_RECORD"133 }134 ]135 }136 ],137 "changes": {138 "compared_to": "2015-07-16",139 "joined": [140 {141 "holder": {142 "entity_id": "dd1cfcd3a25b5a63d549d768e2fcaaaf",143 "type": "ORGANIZATION",144 "name": "ENSoXX GmbH"145 },146 "percentage": 94.5147 }148 ],149 "left": [],150 "changed": [151 {152 "holder": {153 "entity_id": "08ed5f967956831ca6588930fd2693ed",154 "type": "PERSON",155 "name": "Max Felix Mustermann"156 },157 "percentage_before": 100,158 "percentage_after": 5.5159 }160 ]161 }162 },163 "meta": {164 "request_credit_cost": 85,165 "credits_remaining": 145166 }167}
shareholders_deep costs 80 credits, but only when the API finds entries.
Find the beneficial owners
A beneficial owner is whoever ultimately stands behind a company, directly or through other companies. The feature ubos, Beneficial owners (UBO), follows the chain of shareholder lists up to natural persons. Here we take OroraTech GmbH, München HRB 243843, as the example, because its chain runs over many levels.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: YOUR_API_KEY" \ --data-urlencode 'q=OroraTech GmbH' \ --data-urlencode 'feature=ubos'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "YOUR_API_KEY"}, params={ "q": "OroraTech GmbH", "feature": ["ubos"], }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "OroraTech GmbH"); url.searchParams.append("feature", "ubos"); const response = await fetch(url, { headers: { "x-api-key": "YOUR_API_KEY" }, }); const data = await response.json();
1{2 "entity_id": "82a68ab9f7151fa0af9bf189c1caa753",3 "name": "OroraTech GmbH",4 "ubos": {5 "beneficial_owners": [6 {7 "person": {8 "entity_id": "99e133f16ed20bbe874dfb08f87f2e54",9 "name": "Ben Probeberg",10 "birth_date": "1998-05-15",11 "name_parts": {12 "given": "Ben",13 "family": "Probeberg",14 "canonical_name": "Probeberg, Ben"15 },16 "location": {17 "home": {18 "city": "Probestadt",19 "county": "Probestadt (Stadt)",20 "state": "Bayern",21 "country": "DEU"22 }23 }24 },25 "ownership_percentage": 6.3,26 "paths": [27 {28 "percentage": 6.3,29 "via": [30 {31 "depth": 1,32 "name": "Gruebler Ventures UG (haftungsbeschränkt)",33 "entity_id": "8ad5472dd9d7ebc41f36da4ef69bb3a5",34 "step_percentage": 6.335 }36 ]37 }38 ]39 },40 {41 "person": {42 "entity_id": "294824cad5ca0128c27b80ebe4658e02",43 "name": "Otto Beispielbach",44 "birth_date": "1990-05-14",45 "name_parts": {46 "given": "Otto",47 "family": "Beispielbach",48 "canonical_name": "Beispielbach, Otto"49 },50 "location": {51 "home": {52 "city": "Probestadt",53 "county": "Probestadt (Stadt)",54 "state": "Bayern",55 "country": "DEU"56 }57 }58 },59 "ownership_percentage": 3.04,60 "paths": [61 {62 "percentage": 3.04,63 "via": [64 {65 "depth": 1,66 "name": "Stoffers Capital UG (haftungsbeschränkt)",67 "entity_id": "85210409b2baa963c92fd96bfe5b1c4f",68 "step_percentage": 3.0469 }70 ]71 }72 ]73 },74 {75 "person": {76 "entity_id": "cf4f3147eeaf4875d4020854f1c05ca5",77 "name": "Gunnar Beispielberg",78 "birth_date": "1997-04-21",79 "name_parts": {80 "given": "Gunnar",81 "family": "Beispielberg",82 "canonical_name": "Beispielberg, Gunnar"83 },84 "location": {85 "home": {86 "city": "Exempelkirchen b. Probestadt",87 "county": "Probestadt (Landkreis)",88 "state": "Bayern",89 "country": "DEU"90 }91 }92 },93 "ownership_percentage": 2.97,94 "paths": [95 {96 "percentage": 2.97,97 "via": []98 }99 ]100 },101 {102 "person": {103 "entity_id": "dbcaeae2179be548c1affb1a59b9acc5",104 "name": "Niklas Jan Exempel",105 "birth_date": "1985-06-09",106 "name_parts": {107 "given": "Niklas Jan",108 "family": "Exempel",109 "canonical_name": "Exempel, Niklas Jan"110 },111 "location": {112 "home": {113 "city": "Probestadt",114 "county": "Probestadt (Stadt)",115 "state": "Bayern",116 "country": "DEU"117 }118 }119 },120 "ownership_percentage": 2.97,121 "paths": [122 {123 "percentage": 2.97,124 "via": []125 }126 ]127 },128 {129 "person": {130 "entity_id": "39cd92d732b550604f585f48a9da16ef",131 "name": "Lars Probefeld",132 "birth_date": "1961-02-04",133 "name_parts": {134 "given": "Lars",135 "family": "Probefeld",136 "canonical_name": "Dr. Probefeld, Lars"137 },138 "location": {139 "home": {140 "city": "Exempelhain",141 "county": "Probestadt (Landkreis)",142 "state": "Bayern",143 "country": "DEU"144 }145 }146 },147 "ownership_percentage": 0.52,148 "paths": [149 {150 "percentage": 0.52,151 "via": []152 }153 ]154 },155 {156 "person": {157 "entity_id": null,158 "name": "Till Dieter Mustergut",159 "birth_date": "1963-06-05",160 "name_parts": {161 "given": "Till Dieter",162 "family": "Mustergut"163 },164 "location": null165 },166 "ownership_percentage": 0.48,167 "paths": [168 {169 "percentage": 0.48,170 "via": [171 {172 "depth": 1,173 "name": "SpaceTec Capital GmbH",174 "entity_id": "bb1085469dfe9fd0c2e31f1bac4b9767",175 "step_percentage": 0.48176 }177 ]178 }179 ]180 },181 {182 "person": {183 "entity_id": "960bf144c3eda5c99e3caab086644da1",184 "name": "Jan Probemann",185 "birth_date": "1968-07-22",186 "name_parts": {187 "given": "Jan",188 "family": "Probemann",189 "canonical_name": "Dr. Probemann, Jan"190 },191 "location": {192 "home": {193 "city": "Probekirchen",194 "county": "Probekirchen",195 "state": "Nordrhein-Westfalen",196 "country": "DEU"197 }198 }199 },200 "ownership_percentage": 0.45,201 "paths": [202 {203 "percentage": 0.45,204 "via": []205 }206 ]207 },208 {209 "person": {210 "entity_id": null,211 "name": "Ansgar Beispielbach",212 "birth_date": "1986-07-12",213 "name_parts": {214 "given": "Ansgar",215 "family": "Beispielbach"216 },217 "location": null218 },219 "ownership_percentage": 0.14,220 "paths": [221 {222 "percentage": 0.14,223 "via": []224 }225 ]226 },227 {228 "person": {229 "entity_id": "9792b6bfd69854a5b19739fea1ea823e",230 "name": "Oskar Musterbrink",231 "birth_date": "1977-08-04",232 "name_parts": {233 "given": "Oskar",234 "family": "Musterbrink",235 "canonical_name": "Musterbrink, Oskar"236 },237 "location": {238 "home": {239 "city": "Probestadt",240 "county": "Probestadt (Stadt)",241 "state": "Bayern",242 "country": "DEU"243 }244 }245 },246 "ownership_percentage": 0.11,247 "paths": [248 {249 "percentage": 0.11,250 "via": []251 }252 ]253 },254 {255 "person": {256 "entity_id": "ec1fada353aa68303cb963369161928a",257 "name": "Rainer Beispielfeld",258 "birth_date": "1995-02-21",259 "name_parts": {260 "given": "Rainer",261 "family": "Beispielfeld",262 "canonical_name": "Beispielfeld, Rainer"263 },264 "location": {265 "home": {266 "city": "Probestadt",267 "county": "Probestadt (Stadt)",268 "state": "Bayern",269 "country": "DEU"270 }271 }272 },273 "ownership_percentage": 0.11,274 "paths": [275 {276 "percentage": 0.11,277 "via": []278 }279 ]280 },281 {282 "person": {283 "entity_id": "f08c9fbac5f16a37518e63683e007a6d",284 "name": "Felix Klaus Max Beispielberg",285 "birth_date": "1967-07-25",286 "name_parts": {287 "given": "Felix Klaus Max",288 "family": "Beispielberg",289 "canonical_name": "Beispielberg, Felix Klaus Max"290 },291 "location": {292 "home": {293 "city": "Musterbach",294 "county": "Musterbach (Stadt)",295 "state": "Bayern",296 "country": "DEU"297 }298 }299 },300 "ownership_percentage": 0.03,301 "paths": [302 {303 "percentage": 0.03,304 "via": []305 }306 ]307 }308 ],309 "unresolved_beneficial_owners": [310 {311 "reason": "no_further_shareholder_data",312 "entity_id": "0aedd216ca3a22f0204667d552fe0c82",313 "name": "ConActivity KG",314 "legal_form": "KG",315 "address": {316 "house_number": "12",317 "street": "Siesmayerstr.",318 "postal_code": "60323",319 "city": "Frankfurt am Main",320 "county": "Frankfurt am Main",321 "state": "Hessen",322 "country": "DEU",323 "coordinates": {324 "latitude": 50.12033,325 "longitude": 8.65979326 }327 },328 "registration": {329 "court": "Frankfurt am Main",330 "register_type": "HRA",331 "register_number": "30787"332 },333 "ownership_percentage": 10.53,334 "via": []335 },336 {337 "reason": "unlinked",338 "entity_id": null,339 "name": "Korys Investments N.V.",340 "legal_form": null,341 "address": {342 "country": "BEL"343 },344 "registration": [],345 "ownership_percentage": 9.96,346 "via": []347 },348 {349 "reason": "no_further_shareholder_data",350 "entity_id": "697760968fea213b6a4b984b564b7cea",351 "name": "Wachstumsfonds Bayern 2 GmbH & Co. KG",352 "legal_form": "GmbH & Co. KG",353 "address": {354 "house_number": "135 a",355 "street": "Ländgasse",356 "postal_code": "84028",357 "city": "Landshut",358 "county": "Landshut (Stadt)",359 "state": "Bayern",360 "country": "DEU",361 "coordinates": {362 "latitude": 48.53551,363 "longitude": 12.1501364 }365 },366 "registration": {367 "court": "Landshut",368 "register_type": "HRA",369 "register_number": "11924"370 },371 "ownership_percentage": 9.52,372 "via": []373 },374 {375 "reason": "no_further_shareholder_data",376 "entity_id": "3835ff8711f539231fd912f976a68c85",377 "name": "Ananda Impact Fund III GmbH & Co. KG",378 "legal_form": "GmbH & Co. KG",379 "address": {380 "house_number": "6",381 "street": "Isarwinkel",382 "postal_code": "81379",383 "city": "München",384 "county": "München (Stadt)",385 "state": "Bayern",386 "country": "DEU",387 "coordinates": {388 "latitude": 48.09599,389 "longitude": 11.54402390 }391 },392 "registration": {393 "court": "München",394 "register_type": "HRA",395 "register_number": "107669"396 },397 "ownership_percentage": 8.92,398 "via": []399 },400 {401 "reason": "unlinked",402 "entity_id": null,403 "name": "Edaphon SRL",404 "legal_form": null,405 "address": {406 "country": "BEL"407 },408 "registration": {409 "court": "Handelsregister Brüssel",410 "register_type": "BE",411 "register_number": "0787.533.694"412 },413 "ownership_percentage": 8.54,414 "via": []415 },416 {417 "reason": "unlinked",418 "entity_id": null,419 "name": "ECBF I SCSp",420 "legal_form": null,421 "address": {422 "country": "LUX"423 },424 "registration": {425 "court": "Handels- und Ge- sellschaftsregister von Luxemburg (Registre de Commerce et des Sociétés)",426 "register_type": "B",427 "register_number": "245576"428 },429 "ownership_percentage": 8.34,430 "via": []431 },432 {433 "reason": "no_further_shareholder_data",434 "entity_id": "38b7ed49ae75c55cd4e98958c2765e1f",435 "name": "ScaleUp-Fonds Bayern GmbH & Co. KG",436 "legal_form": "GmbH & Co. KG",437 "address": {438 "house_number": "135 a",439 "street": "Ländgasse",440 "postal_code": "84028",441 "city": "Landshut",442 "county": "Landshut (Stadt)",443 "state": "Bayern",444 "country": "DEU",445 "coordinates": {446 "latitude": 48.53551,447 "longitude": 12.1501448 }449 },450 "registration": {451 "court": "Landshut",452 "register_type": "HRA",453 "register_number": "12153"454 },455 "ownership_percentage": 7.1,456 "via": []457 },458 {459 "reason": "unlinked",460 "entity_id": null,461 "name": "BNP Paribas Solar Impulse Venture Fund SLP",462 "legal_form": null,463 "address": {464 "country": "FRA"465 },466 "registration": {467 "court": "Unternehmensregister von Frankreich (Registre national des entreprises)",468 "register_type": "912",469 "register_number": "234 911"470 },471 "ownership_percentage": 6.4,472 "via": []473 },474 {475 "reason": "unlinked",476 "entity_id": null,477 "name": "Findus Venture GmbH",478 "legal_form": null,479 "address": {480 "country": "AUT"481 },482 "registration": {483 "court": "Firmenbuch Wien",484 "register_type": "FN",485 "register_number": "493001b"486 },487 "ownership_percentage": 6.25,488 "via": []489 },490 {491 "reason": "cycle",492 "entity_id": "82a68ab9f7151fa0af9bf189c1caa753",493 "name": "OroraTech GmbH",494 "legal_form": "GmbH",495 "address": {496 "house_number": "112",497 "street": "St.-Martin-Straße",498 "postal_code": "81669",499 "city": "München",500 "county": "München (Stadt)",501 "state": "Bayern",502 "country": "DEU",503 "coordinates": {504 "latitude": 48.13641,505 "longitude": 11.57754506 }507 },508 "registration": {509 "court": "München",510 "register_type": "HRB",511 "register_number": "243843"512 },513 "ownership_percentage": 2.64,514 "via": []515 },516 {517 "reason": "unlinked",518 "entity_id": null,519 "name": "APEX One Best in Class EuVECA GmbH & Co KG",520 "legal_form": null,521 "address": {522 "country": "AUT"523 },524 "registration": {525 "court": "Firmenbuch Wien",526 "register_type": "FN",527 "register_number": "559371f"528 },529 "ownership_percentage": 1.57,530 "via": []531 },532 {533 "reason": "unlinked",534 "entity_id": null,535 "name": "Rabo Ventures B.V.",536 "legal_form": null,537 "address": {538 "country": "NLD"539 },540 "registration": {541 "court": "Handelsregister der Niederlande",542 "register_type": "KvK-Nummer",543 "register_number": "34285559"544 },545 "ownership_percentage": 1.5,546 "via": []547 },548 {549 "reason": "unlinked",550 "entity_id": null,551 "name": "APEX Ventures EuVECA GmbH & Co. KG",552 "legal_form": null,553 "address": {554 "country": "AUT"555 },556 "registration": {557 "court": "Firmenbuch Wien",558 "register_type": "FN",559 "register_number": "460075g"560 },561 "ownership_percentage": 1.21,562 "via": []563 },564 {565 "reason": "unlinked",566 "entity_id": null,567 "name": "Earth Sciences Foundation",568 "legal_form": null,569 "address": {570 "country": "USA"571 },572 "registration": [],573 "ownership_percentage": 0.39,574 "via": []575 }576 ],577 "coverage": {578 "resolved_percentage": 17.12,579 "unresolved_percentage": 82.87580 }581 },582 "meta": {583 "request_credit_cost": 15,584 "credits_remaining": 145585 }586}
beneficial_owners names each person. Their total share in percent is in ownership_percentage. The routes to it are in paths, the companies in between in via. coverage shows which share of the capital is resolved down to people (resolved_percentage) and which is not (unresolved_percentage). The two don't always add up to 100%. For the rest, the shareholder data names no owner.
If a chain ends before a natural person, the share is in unresolved_beneficial_owners. Often this is a shareholder that holds its stake through a company abroad. We only cover German companies, so we don't know that company's shareholders. The reason is in reason:
| reason | Meaning |
|---|---|
| unlinked | The shareholder is a company we can't match to an entry in the German Handelsregister, usually a company abroad. We don't know its shareholders, so the chain ends here. |
| no_further_shareholder_data | We know the company, but there is no shareholder list for it, for example for a KG. |
| cycle | The chain leads back to a company that already appears in it, for example when a company holds its own shares. |
| unknown | Nothing is known about the shareholder, neither name nor share. |
ubos costs 10 credits as soon as the block contains data. This also applies when it only shows unresolved shares.
Fetch a person profile
The person profile (fetch-person) shows all positions of a person in the register. It adds a short description, areas of expertise and ways to get in touch from public sources on the web. You pass the person's name and a company where they are or were registered.
curl -G "https://handelsregister.ai/api/v1/fetch-person" \ -H "x-api-key: YOUR_API_KEY" \ --data-urlencode 'person_q=Max Mustermann' \ --data-urlencode 'organization_q=Hetzner Online GmbH'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-person", headers={"x-api-key": "YOUR_API_KEY"}, params={ "person_q": "Max Mustermann", "organization_q": "Hetzner Online GmbH", }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-person"); url.searchParams.append("person_q", "Max Mustermann"); url.searchParams.append("organization_q", "Hetzner Online GmbH"); const response = await fetch(url, { headers: { "x-api-key": "YOUR_API_KEY" }, }); const data = await response.json();
1{2 "entity_id": "08ed5f967956831ca6588930fd2693ed",3 "name": "Max Felix Mustermann",4 "birth_date": "1976-01-15",5 "name_parts": {6 "given": "Max Felix",7 "family": "Mustermann",8 "maiden": null,9 "canonical_name": "Mustermann, Max Felix",10 "previous_names": null11 },12 "location": {13 "home": {14 "city": "Musterheim"15 }16 },17 "bio": "Max Felix Mustermann ist Geschäftsführer der Hetzner Online GmbH und Unternehmer im Bereich Rechenzentren.",18 "expertise": [19 "Rechenzentren",20 "Hosting"21 ],22 "contact": {23 "emails": [24 {25 "address": "[email protected]",26 "type": "organization",27 "label": "Allgemeine Unternehmenskontakt-E-Mail"28 },29 {30 "address": "[email protected]",31 "type": "organization",32 "label": "E-Mail für Produktfeedback"33 }34 ],35 "phones": [36 {37 "number": "+49374574447100",38 "type": "organization",39 "entity": "Hetzner Online GmbH",40 "label": "Öffentliche Unternehmens-Telefonnummer"41 },42 {43 "number": "+49911234226100",44 "type": "organization",45 "entity": "Hetzner Online GmbH",46 "label": "Öffentliche Unternehmens-Telefonnummer"47 },48 {49 "number": "+4998315050",50 "type": "organization",51 "entity": "Hetzner Online GmbH",52 "label": "Zentrale Unternehmensnummer"53 }54 ]55 },56 "profiles": {57 "linkedin": null,58 "other": []59 },60 "affiliations": [61 {62 "organization": "ENSoXX Holding AG",63 "relation": "Vorstandsmitglied"64 },65 {66 "organization": "Hetzner Online GmbH",67 "relation": "Geschäftsführer"68 },69 {70 "organization": "ENSoXX hilft e.V.",71 "relation": "Vorstandsmitglied"72 },73 {74 "organization": "TRAIDY UG (haftungsbeschränkt)",75 "relation": "Geschäftsführer"76 },77 {78 "organization": "HT clean energy GmbH",79 "relation": "Geschäftsführer"80 },81 {82 "organization": "DreamSoXX GmbH",83 "relation": "Geschäftsführer"84 },85 {86 "organization": "Lighthouse GmbH",87 "relation": "Prokura"88 },89 {90 "organization": "ENSoXX GmbH",91 "relation": "Geschäftsführer"92 },93 {94 "organization": "ENSoXX Invest GmbH",95 "relation": "Geschäftsführer"96 },97 {98 "organization": "Sonnenkraft Merkendorf GmbH & Co. KG",99 "relation": "Kommanditist"100 },101 {102 "organization": "Modellsportclub Gunzenhausen e.V.",103 "relation": "Vorstandsmitglied"104 },105 {106 "organization": "possum Projekt 1 GmbH",107 "relation": "Prokura"108 }109 ],110 "handelsregister_roles": [111 {112 "entity_id": "94eb910fef13f94585c48c263fa446d4",113 "name": "Hetzner Online GmbH",114 "label": "BOARD",115 "role": {116 "en": "Board Member",117 "de": "Vorstandsmitglied"118 },119 "start_date": "2002-10-15",120 "end_date": "2015-07-28"121 },122 {123 "entity_id": "0b3435f83ce8591300625100815d4583",124 "name": "Hetzner Online GmbH",125 "label": "BOARD",126 "role": {127 "en": "Board Member",128 "de": "Vorstandsmitglied"129 },130 "start_date": "2002-10-15",131 "end_date": "2015-07-28"132 },133 {134 "entity_id": "0b3435f83ce8591300625100815d4583",135 "name": "Hetzner Online GmbH",136 "label": "MANAGING_DIRECTOR",137 "role": {138 "en": "Managing Director",139 "de": "Geschäftsführer"140 },141 "start_date": "2015-07-28",142 "end_date": null143 },144 {145 "entity_id": "94eb910fef13f94585c48c263fa446d4",146 "name": "Hetzner Online GmbH",147 "label": "MANAGING_DIRECTOR",148 "role": {149 "en": "Managing Director",150 "de": "Geschäftsführer"151 },152 "start_date": "2015-07-28",153 "end_date": null154 },155 {156 "entity_id": "dd1cfcd3a25b5a63d549d768e2fcaaaf",157 "name": "ENSoXX GmbH",158 "label": "MANAGING_DIRECTOR",159 "role": {160 "en": "Managing Director",161 "de": "Geschäftsführer"162 },163 "start_date": "2015-08-14",164 "end_date": null165 },166 {167 "entity_id": "58d67a0bb99b2bc5644cb8daba58e6a6",168 "name": "ENSoXX Holding AG",169 "label": "BOARD",170 "role": {171 "en": "Board Member",172 "de": "Vorstandsmitglied"173 },174 "start_date": "2016-02-03",175 "end_date": null176 },177 {178 "entity_id": "bc1c1e106ade810eb960c779d4c752a8",179 "name": "ENSoXX hilft e.V.",180 "label": "BOARD",181 "role": {182 "en": "Board Member",183 "de": "Vorstandsmitglied"184 },185 "start_date": "2017-02-24",186 "end_date": null187 },188 {189 "entity_id": "b34f5fcc114e7d4c5fe9d5f6f8fb0d10",190 "name": "TRAIDY UG (haftungsbeschränkt)",191 "label": "MANAGING_DIRECTOR",192 "role": {193 "en": "Managing Director",194 "de": "Geschäftsführer"195 },196 "start_date": "2022-03-14",197 "end_date": null198 },199 {200 "entity_id": "4cd425f9ad57d6119f704ba53131b480",201 "name": "Modellsportclub Gunzenhausen e.V.",202 "label": "BOARD",203 "role": {204 "en": "Board Member",205 "de": "Vorstandsmitglied"206 },207 "start_date": "2023-06-06",208 "end_date": "2026-08-12"209 },210 {211 "entity_id": "0e8b1b4fc27a3ecc07d397750505e7b5",212 "name": "ENSoXX Invest GmbH",213 "label": "MANAGING_DIRECTOR",214 "role": {215 "en": "Managing Director",216 "de": "Geschäftsführer"217 },218 "start_date": "2023-12-13",219 "end_date": null220 },221 {222 "entity_id": "2ab71b59057969183dd811adf9f32ebd",223 "name": "HT clean energy GmbH",224 "label": "MANAGING_DIRECTOR",225 "role": {226 "en": "Managing Director",227 "de": "Geschäftsführer"228 },229 "start_date": "2024-08-20",230 "end_date": null231 },232 {233 "entity_id": "260286ab8baa3a8977fddd56b9361c6c",234 "name": "DreamSoXX GmbH",235 "label": "MANAGING_DIRECTOR",236 "role": {237 "en": "Managing Director",238 "de": "Geschäftsführer"239 },240 "start_date": "2025-01-13",241 "end_date": null242 },243 {244 "entity_id": "7582db1f94e1538ba8f531f6a95a7f1b",245 "name": "Lighthouse GmbH",246 "label": "PROCURA",247 "role": {248 "en": "Procura",249 "de": "Prokura"250 },251 "start_date": "2025-03-25",252 "end_date": null253 },254 {255 "entity_id": "232d2ed634eef59eb21836cc47cb5645",256 "name": "Sonnenkraft Merkendorf GmbH & Co. KG",257 "label": "LIMITED_PARTNER",258 "role": {259 "en": "Limited Partner",260 "de": "Kommanditist"261 },262 "start_date": "2026-02-18",263 "end_date": null264 },265 {266 "entity_id": "64922d416b4dd7006f3c2c62efaabd5d",267 "name": "possum Projekt 1 GmbH",268 "label": "PROCURA",269 "role": {270 "en": "Procura",271 "de": "Prokura"272 },273 "start_date": "2026-09-04",274 "end_date": null275 },276 {277 "entity_id": "997f1b8314b8b56573208ae2334abb1d",278 "name": "possum Projekt 1 GmbH",279 "label": "PROCURA",280 "role": {281 "en": "Procura",282 "de": "Prokura"283 },284 "start_date": "2026-09-04",285 "end_date": null286 }287 ],288 "meta": {289 "request_credit_cost": 15,290 "credits_remaining": 145291 }292}
The company makes the person unique, so both are required. If no person can be matched with confidence, you get HTTP 404 at no cost. Positions are in handelsregister_roles; an empty end_date means current.
The person profile comes with a credit subscription from Plus and costs 15 credits. With features=shareholdings, the person's shareholdings are added. They cost 5 credits, but only when there are any.