Firmenprofil abrufen
fetch-organization findet eine Firma über ihren Namen, Registergericht und Registernummer oder die entity_id. Eine Suche vorab ist meist nicht nötig.
Für ein Firmenprofil reicht eine Anfrage: fetch-organization findet die Firma selbst. Du nennst sie auf einem von drei Wegen in q. Eine Suche vorab brauchst du meist nicht.
Mit dem Namen
Schreib den Firmennamen mit Rechtsform in q, so wie er im Register steht. Ein Ort dahinter hilft, wenn es den Namen mehrfach gibt. Groß- und Kleinschreibung spielt keine Rolle. Unsere Beispielanfrage sucht die Hetzner Online GmbH, Ansbach HRB 6089, über Name und Ort.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: DEIN_API_SCHLUESSEL" \ --data-urlencode 'q=Hetzner Online GmbH Gunzenhausen'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "DEIN_API_SCHLUESSEL"}, params={ "q": "Hetzner Online GmbH Gunzenhausen", }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "Hetzner Online GmbH Gunzenhausen"); const response = await fetch(url, { headers: { "x-api-key": "DEIN_API_SCHLUESSEL" }, }); const data = await response.json();
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "status": "ACTIVE",5 "legal_form": "GmbH",6 "registration": {7 "court": "Ansbach",8 "register_type": "HRB",9 "register_number": "6089"10 },11 "address": {12 "house_number": "25",13 "street": "Industriestraße",14 "postal_code": "91710",15 "city": "Gunzenhausen",16 "county": "Weißenburg-Gunzenhausen",17 "state": "Bayern",18 "country": "DEU",19 "coordinates": {20 "latitude": 49.12483,21 "longitude": 10.7805222 }23 },24 "meta": {25 "request_credit_cost": 5,26 "credits_remaining": 14527 }28}
Die Antwort enthält die Basisdaten der Firma und kostet 5 Credits. Für alle weiteren Anfragen brauchst du vor allem die entity_id.
Tragen mehrere Firmen denselben Namen, kann die API eine andere als die gesuchte liefern oder mit HTTP 404 antworten. Kommt es auf genau diese Firma an, frag mit Registergericht und Registernummer oder mit der entity_id.
Mit Registergericht und Registernummer
Registergericht, Registerart und Registernummer zusammen bezeichnen genau einen Eintrag im Handelsregister. Das Registergericht ist das Amtsgericht, das das Register führt. Schreib alle drei Teile in q, im Beispiel Ansbach HRB 6089.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: DEIN_API_SCHLUESSEL" \ --data-urlencode 'q=Ansbach HRB 6089'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "DEIN_API_SCHLUESSEL"}, params={ "q": "Ansbach HRB 6089", }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "Ansbach HRB 6089"); const response = await fetch(url, { headers: { "x-api-key": "DEIN_API_SCHLUESSEL" }, }); const data = await response.json();
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "status": "ACTIVE",5 "legal_form": "GmbH",6 "registration": {7 "court": "Ansbach",8 "register_type": "HRB",9 "register_number": "6089"10 },11 "address": {12 "house_number": "25",13 "street": "Industriestraße",14 "postal_code": "91710",15 "city": "Gunzenhausen",16 "county": "Weißenburg-Gunzenhausen",17 "state": "Bayern",18 "country": "DEU",19 "coordinates": {20 "latitude": 49.12483,21 "longitude": 10.7805222 }23 },24 "meta": {25 "request_credit_cost": 5,26 "credits_remaining": 14527 }28}
Die Reihenfolge ist frei: HRB 6089 Ansbach funktioniert genauso. „Amtsgericht“ musst du nicht dazuschreiben. Ohne Registergericht findet die API keine Firma, denn dieselbe Nummer vergeben viele Gerichte.
Mit der entity_id
Jede Antwort enthält die entity_id, eine Kennung der Firma aus 32 Zeichen. Speichere sie und nutze sie für alle weiteren Anfragen. Du brauchst sie in q von fetch-organization, als company_id für Dokumente, in organization_ids bei Signals und für einen Monitor.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: DEIN_API_SCHLUESSEL" \ --data-urlencode 'q=94eb910fef13f94585c48c263fa446d4'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "DEIN_API_SCHLUESSEL"}, params={ "q": "94eb910fef13f94585c48c263fa446d4", }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/fetch-organization"); url.searchParams.append("q", "94eb910fef13f94585c48c263fa446d4"); const response = await fetch(url, { headers: { "x-api-key": "DEIN_API_SCHLUESSEL" }, }); const data = await response.json();
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "status": "ACTIVE",5 "legal_form": "GmbH",6 "registration": {7 "court": "Ansbach",8 "register_type": "HRB",9 "register_number": "6089"10 },11 "address": {12 "house_number": "25",13 "street": "Industriestraße",14 "postal_code": "91710",15 "city": "Gunzenhausen",16 "county": "Weißenburg-Gunzenhausen",17 "state": "Bayern",18 "country": "DEU",19 "coordinates": {20 "latitude": 49.12483,21 "longitude": 10.7805222 }23 },24 "meta": {25 "request_credit_cost": 5,26 "credits_remaining": 14527 }28}
Mit der entity_id gibt es keine Verwechslung, und dein System braucht keinen Namensabgleich mehr.
Features dazunehmen
Die Basisdaten kommen immer. Alles Weitere forderst du in derselben Anfrage als Feature an. Gib dazu feature mehrfach an oder schreib mehrere Namen mit Komma in features. Das Beispiel holt die Geschäftsführung und die Finanz-KPIs der zwei neuesten Geschäftsjahre.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: DEIN_API_SCHLUESSEL" \ --data-urlencode 'q=Ansbach HRB 6089' \ --data-urlencode 'feature=related_persons' \ --data-urlencode 'feature=financial_kpi' \ --data-urlencode 'financial_years=2'
import requests response = requests.get( "https://handelsregister.ai/api/v1/fetch-organization", headers={"x-api-key": "DEIN_API_SCHLUESSEL"}, params={ "q": "Ansbach HRB 6089", "feature": ["related_persons", "financial_kpi"], "financial_years": "2", }, ) 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", "related_persons"); url.searchParams.append("feature", "financial_kpi"); url.searchParams.append("financial_years", "2"); const response = await fetch(url, { headers: { "x-api-key": "DEIN_API_SCHLUESSEL" }, }); 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 "financial_kpi": [401 {402 "year": 2023,403 "employees": 340,404 "company_size_by_employees": "large",405 "revenue_per_employee": 1582798.844,406 "net_income_per_employee": 485049.362,407 "assets_total": 397093655.67,408 "active_total": 397093655.67,409 "equity_total": 297695266.84,410 "liabilities_total": 28921831.79,411 "provisions_total": 55716527.94,412 "current_assets_total": 75902450.81,413 "inventory_total": 2605622.88,414 "receivables_total": 34451734.53,415 "securities_current_total": null,416 "cash_and_equivalents": 38845093.4,417 "ppe_total": 269497218.27,418 "intangible_assets": 18788946.41,419 "goodwill": null,420 "equity_ratio": 0.75,421 "debt_to_equity": 0.097,422 "debt_to_assets": 0.073,423 "cash_to_assets": 0.098,424 "cash_to_liabilities": 1.343,425 "receivables_to_assets": 0.087,426 "inventory_to_assets": 0.007,427 "ppe_to_assets": 0.679,428 "intangible_to_assets": 0.047,429 "goodwill_to_assets": null,430 "intangible_to_equity": 0.063,431 "tangible_equity": 278906320.43,432 "tangible_equity_ratio": 0.702,433 "operating_working_capital": 13370466.18,434 "net_working_capital_strict": 61276584.41,435 "net_working_capital_approx": 46980619.02,436 "interest_bearing_debt_strict": null,437 "interest_bearing_debt_broad": 14295965.39,438 "net_debt_narrow": null,439 "net_debt_broad": -24549128.01,440 "bank_debt": null,441 "bonds": null,442 "trade_payables": 14625866.4,443 "intragroup_receivables": 548819.99,444 "intragroup_payables": 2667666.2,445 "company_size_by_assets": "large",446 "revenue": 538151607.13,447 "material_expenses": 116509640.56,448 "material_expenses_goods": 1157010.5,449 "material_expenses_services": 115352630.06,450 "personnel_expenses": 37557386.2,451 "wages_salaries": 33140885.29,452 "social_expenses": 4416500.91,453 "pension_costs": null,454 "depreciation_amortization": 129958760.25,455 "other_operating_income": 1229615.57,456 "other_operating_expenses": 29380170.42,457 "selling_expenses": null,458 "admin_expenses": null,459 "gross_profit": null,460 "ebit": null,461 "ebt": null,462 "income_taxes": 67650181.5,463 "other_taxes": 94694.61,464 "net_income": 164916783.06,465 "ebitda": null,466 "gross_margin": null,467 "ebitda_margin": null,468 "ebit_margin": null,469 "net_margin": 0.306,470 "material_intensity": 0.216,471 "personnel_intensity": 0.07,472 "sga": null,473 "sga_ratio": null,474 "opex_core": 66937556.62,475 "opex_ratio": 0.124,476 "interest_coverage": null,477 "effective_tax_rate": null,478 "capitalized_own_work_ratio": 0.003,479 "inventory_change_ratio": null,480 "finance_income": 5025778.39,481 "finance_income_from_affiliates": null,482 "finance_to_ebt_ratio": null,483 "company_size_by_revenue": "large",484 "source_statement_date": "2023-12-31",485 "source_statement_type": "Jahresabschluss",486 "fixed_assets_total": 316193205.41,487 "land_and_buildings": 46944085.59,488 "long_term_financial_assets": 27907040.73,489 "trade_receivables": 25390709.7,490 "prepaid_expenses": 4997999.45,491 "capital_reserves": 536224.77,492 "revenue_reserves": 20005000,493 "profit_loss_carried_forward": 332187259.01,494 "pension_provisions": null,495 "other_provisions": 22278401.94,496 "liabilities_to_affiliated_companies": 2667666.2,497 "other_liabilities": 11628299.19,498 "deferred_income": 14760029.1,499 "interest_income": 5025778.39,500 "interest_expense": 42.37,501 "depreciation_amortization_operating": 129958760.25,502 "write_downs_financial_assets_and_securities": null,503 "income_after_taxes": 165011477.67,504 "_provenance": {505 "statement_type": "Jahresabschluss",506 "period_start": "2023-01-01",507 "period_end": "2023-12-31",508 "exempt_subsidiary": false,509 "parent_organization": null510 }511 },512 {513 "year": 2022,514 "employees": 320,515 "company_size_by_employees": "large",516 "revenue_per_employee": 1396309.758,517 "net_income_per_employee": 377666.02,518 "assets_total": 444880125.47,519 "active_total": 444880125.47,520 "equity_total": 352242259.01,521 "liabilities_total": 46463198.47,522 "provisions_total": 26782680.75,523 "current_assets_total": 131050312.58,524 "inventory_total": 1887629.1,525 "receivables_total": 27702079.33,526 "securities_current_total": null,527 "cash_and_equivalents": 101460604.15,528 "ppe_total": 269345763.76,529 "intangible_assets": 12231207.94,530 "goodwill": null,531 "equity_ratio": 0.792,532 "debt_to_equity": 0.132,533 "debt_to_assets": 0.104,534 "cash_to_assets": 0.228,535 "cash_to_liabilities": 2.184,536 "receivables_to_assets": 0.062,537 "inventory_to_assets": 0.004,538 "ppe_to_assets": 0.605,539 "intangible_to_assets": 0.027,540 "goodwill_to_assets": null,541 "intangible_to_equity": 0.035,542 "tangible_equity": 340011051.07,543 "tangible_equity_ratio": 0.764,544 "operating_working_capital": 6188582.52,545 "net_working_capital_strict": 115739202.37,546 "net_working_capital_approx": 84587114.11,547 "interest_bearing_debt_strict": null,548 "interest_bearing_debt_broad": 31152088.26,549 "net_debt_narrow": null,550 "net_debt_broad": -70308515.89,551 "bank_debt": null,552 "bonds": null,553 "trade_payables": 15311110.21,554 "intragroup_receivables": 425178.6,555 "intragroup_payables": 4135982.99,556 "company_size_by_assets": "large",557 "revenue": 446819122.41,558 "material_expenses": 86705005.69,559 "material_expenses_goods": 1716860.71,560 "material_expenses_services": 84988144.98,561 "personnel_expenses": 30660187,562 "wages_salaries": 26876081.71,563 "social_expenses": 3784105.29,564 "pension_costs": null,565 "depreciation_amortization": 132774782.91,566 "other_operating_income": 851946.7,567 "other_operating_expenses": 32577388.65,568 "selling_expenses": null,569 "admin_expenses": null,570 "gross_profit": null,571 "ebit": null,572 "ebt": null,573 "income_taxes": 48316338.38,574 "other_taxes": 106304.86,575 "net_income": 120853126.37,576 "ebitda": null,577 "gross_margin": null,578 "ebitda_margin": null,579 "ebit_margin": null,580 "net_margin": 0.27,581 "material_intensity": 0.194,582 "personnel_intensity": 0.069,583 "sga": null,584 "sga_ratio": null,585 "opex_core": 63237575.65,586 "opex_ratio": 0.142,587 "interest_coverage": null,588 "effective_tax_rate": null,589 "capitalized_own_work_ratio": 0.004,590 "inventory_change_ratio": 0.004,591 "finance_income": 2670145.94,592 "finance_income_from_affiliates": 2500000,593 "finance_to_ebt_ratio": null,594 "company_size_by_revenue": "large",595 "source_statement_date": "2022-12-31",596 "source_statement_type": "Jahresabschluss",597 "fixed_assets_total": 309484012.43,598 "land_and_buildings": 47348736.49,599 "long_term_financial_assets": 27907040.73,600 "trade_receivables": 19612063.63,601 "prepaid_expenses": 4345800.46,602 "capital_reserves": null,603 "revenue_reserves": 20005000,604 "profit_loss_carried_forward": 296334132.64,605 "pension_provisions": null,606 "other_provisions": 16843449.75,607 "liabilities_to_affiliated_companies": 4135982.99,608 "other_liabilities": 27016105.27,609 "deferred_income": 19391987.24,610 "interest_income": 170145.94,611 "interest_expense": 145745.2,612 "depreciation_amortization_operating": 132774782.91,613 "write_downs_financial_assets_and_securities": null,614 "income_after_taxes": 120959431.23,615 "_provenance": {616 "statement_type": "Jahresabschluss",617 "period_start": "2022-01-01",618 "period_end": "2022-12-31",619 "exempt_subsidiary": false,620 "parent_organization": null621 }622 }623 ],624 "meta": {625 "request_credit_cost": 8,626 "credits_remaining": 145627 }628}
Unsere Beispielanfrage hat 8 Credits gekostet: die Basisdaten und die beiden Features, denn beide lieferten Daten. Jedes Feature hat einen eigenen Preis und kostet nur, wenn es Daten liefert. Alle Features mit Preis findest du bei fetch-organization.
Suche & Export als Alternative
Für ein einzelnes Firmenprofil brauchst du keine Suche. Suche & Export (search-organizations) lohnt sich, wenn du mehrere Treffer zeigen oder auswerten willst:
- Autovervollständigung in einem Eingabefeld, während jemand tippt.
- Eigene Suchmasken, in denen Nutzer aus einer Trefferliste wählen.
- Listen nach Region, Branche, Rechtsform oder Kennzahlen, siehe Firmenlisten erstellen.
Eine Seite mit Treffern kostet 1 Credit. Jeder Treffer enthält seine entity_id. Damit rufst du danach das Firmenprofil ab.
curl -G "https://handelsregister.ai/api/v1/search-organizations" \ -H "x-api-key: DEIN_API_SCHLUESSEL" \ --data-urlencode 'q=Hetzner Online GmbH' \ --data-urlencode 'limit=5'
import requests response = requests.get( "https://handelsregister.ai/api/v1/search-organizations", headers={"x-api-key": "DEIN_API_SCHLUESSEL"}, params={ "q": "Hetzner Online GmbH", "limit": "5", }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/search-organizations"); url.searchParams.append("q", "Hetzner Online GmbH"); url.searchParams.append("limit", "5"); const response = await fetch(url, { headers: { "x-api-key": "DEIN_API_SCHLUESSEL" }, }); const data = await response.json();
1{2 "results": [3 {4 "entity_id": "94eb910fef13f94585c48c263fa446d4",5 "name": "Hetzner Online GmbH",6 "registration": {7 "court": "Ansbach",8 "register_type": "HRB",9 "register_number": "6089"10 },11 "address": {12 "house_number": "25",13 "street": "Industriestraße",14 "postal_code": "91710",15 "city": "Gunzenhausen",16 "county": "Weißenburg-Gunzenhausen",17 "state": "Bayern",18 "country": "DEU",19 "coordinates": {20 "latitude": 49.12483,21 "longitude": 10.7805222 }23 },24 "seat": {25 "city": "Gunzenhausen"26 },27 "registration_date": "2015-07-28T00:00:00",28 "purpose": "Die Durchführung von Internet- und Netzwerkdienstleistungen, das Erstellen und Vertreiben von Software, der Handel mit Hard- und Software, der Betrieb einer Werbeagentur,darüber hinaus der Im- und Export von Waren aller Art, soweit sie keiner Einfuhr- oder Ausfuhrbeschränkung unterliegen und soweit keine Genehmigungen erforderlich sind.",29 "_match_context": [],30 "status_normalized": null31 },32 {33 "entity_id": "63529c3a793e9f002196b4fd344e1241",34 "name": "Hetzner Cloud GmbH",35 "registration": {36 "court": "München",37 "register_type": "HRB",38 "register_number": "226782"39 },40 "address": {41 "house_number": "12A",42 "street": "Feringastraße",43 "postal_code": "85774",44 "city": "Unterföhring",45 "county": "München (Landkreis)",46 "state": "Bayern",47 "country": "DEU",48 "coordinates": {49 "latitude": 48.17815,50 "longitude": 11.6348751 }52 },53 "seat": {54 "city": "Unterföhring"55 },56 "registration_date": "2016-07-01T00:00:00",57 "purpose": "Entwicklung und Betrieb von Internetdiensten.",58 "_match_context": [],59 "status_normalized": null60 },61 {62 "entity_id": "f1747f74c17a47de25bcc130a7b4687f",63 "name": "HETZNER Verwaltungs GmbH",64 "registration": {65 "court": "Ulm",66 "register_type": "HRB",67 "register_number": "680752"68 },69 "address": {70 "house_number": "15",71 "street": "In den Torgärten",72 "postal_code": "97980",73 "city": "Bad Mergentheim",74 "county": "Main-Tauber-Kreis",75 "state": "Baden-Württemberg",76 "country": "DEU",77 "coordinates": {78 "latitude": 49.44874,79 "longitude": 9.78780 }81 },82 "seat": {83 "city": "Bad Mergentheim"84 },85 "registration_date": "2000-11-14T00:00:00",86 "purpose": "Die Beteiligung an Unternehmen und deren Verwaltung, insbesondere die Beteiligung und Geschäftsführung sowie die Übernahme der persönlichen Haftung an der Firma HETZNER GmbH & Co. KG.",87 "_match_context": [],88 "status_normalized": null89 },90 {91 "entity_id": "d8699b327083bea015fc66908d7bb370",92 "name": "Hetzner GmbH Steuerberatungsgesellschaft",93 "registration": {94 "court": "Stuttgart",95 "register_type": "HRB",96 "register_number": "747057"97 },98 "address": {99 "house_number": "7",100 "street": "Stuttgarter Straße",101 "postal_code": "74211",102 "city": "Leingarten",103 "county": "Heilbronn (Landkreis)",104 "state": "Baden-Württemberg",105 "country": "DEU",106 "coordinates": {107 "latitude": 49.14068,108 "longitude": 9.13568109 }110 },111 "seat": {112 "city": "Leingarten"113 },114 "registration_date": "2013-12-04T00:00:00",115 "purpose": "Die für Steuerberatungsgesellschaften gesetzlich und berufsrechtlich zulässigen Tätigkeiten gemäß § 33 in Verbindung mit § 57 Abs. 3 StBerG, insbesondere Steuerberatung. Handels- und Bankgeschäfte sind ausgeschlossen.",116 "_match_context": [],117 "status_normalized": null118 },119 {120 "entity_id": "7d0d69b853c37abcc75d3f7536b9f240",121 "name": "Hörber + Hetzner GmbH",122 "registration": {123 "court": "Nürnberg",124 "register_type": "HRB",125 "register_number": "10098"126 },127 "address": {128 "house_number": "47",129 "street": "Sulzbacher Straße",130 "postal_code": "90552",131 "city": "Röthenbach a.d.Pegnitz",132 "county": "Nürnberger Land",133 "state": "Bayern",134 "country": "DEU",135 "coordinates": {136 "latitude": 49.4914,137 "longitude": 11.251138 }139 },140 "seat": {141 "city": "Röthenbach a. d. Pegnitz"142 },143 "registration_date": "1991-02-04T00:00:00",144 "purpose": "Planung und Entwicklung, die Konstruktion, die Herstellung und der Vertrieb von Maschinen und Vorrichtungen aller Art sowie von Erzeugnissen ergänzender Art.",145 "_match_context": [],146 "status_normalized": null147 }148 ],149 "total": 2165,150 "total_exact": false,151 "total_relation": "upper_bound",152 "meta": {153 "request_credit_cost": 1,154 "credits_remaining": 145155 }156}
Für das Anreichern bestehender Kundendaten ist die Suche meist ein Umweg. Name und Ort oder die Registernummer gehen direkt an fetch-organization, siehe Kundendaten anreichern.
Typische Stolpersteine
- Registernummer ohne Gericht:
HRB 6089allein ergibt HTTP 404. Schreib immer das Registergericht dazu. - Häufige Namen: Bei gleichnamigen Firmen kann die API eine andere Firma liefern als gedacht oder keine finden. Prüf
registrationundaddressoder frag direkt mit Registergericht und Registernummer. - Unscharfe Eingaben: Kurznamen und ungenaue Angaben findet oft der AI-Mode (
ai_search=on-default). Er kostet 20 Credits zusätzlich, auch wenn er keine Firma findet. - Feature-Namen: Unbekannte oder falsch geschriebene Namen ignoriert die API ohne Fehler. Fehlt ein Block in der Antwort, prüf die Schreibweise.