Alle Felder, die der MCP-Server liefert, pro Werkzeug, mit Typ, Bedeutung
und der Regel, wann ein Feld leer (null) ist.
get_company_details oder get_full_record.
10-Feld-Karte je Treffer, zum Suchen, Ranken, Überblicken.
Vollständiges Profil eines Unternehmens (alle Abschnitte unten).
Obermenge des Profils: volle Taxonomie + Lineage.
search_companies → KarteKompakter Auszug. Codes sind hier bereits als Labels ausgegeben
(z. B. GmbH, Oberösterreich).
| Feld | Typ | Bedeutung | null, wenn … |
|---|---|---|---|
fnr | string | Firmenbuchnummer (z. B. 078052h) | nie |
name | string | Firmenwortlaut | nie |
legal_form | string | Rechtsform-Label (z. B. GmbH) | unbekannt |
bundesland | string | Bundesland-Label (z. B. Wien) | unbekannt |
postal_code | string | PLZ des Sitzes (z. B. 1010) | keine Angabe |
city | string | Sitzgemeinde (z. B. Wien) | keine Angabe |
street | string | Straße + Hausnummer | oft leer |
is_financial_institution | bool | Bank/Versicherung laut amtlichem Register (UGB-Kennzahlen fehlen dann bauartbedingt) | - (immer gesetzt) |
size_gkl | string | UGB-Einreichklasse: W Kleinst, K Klein, M Mittel, G Groß (≠ Bilanzgröße, Holdings reichen oft klein ein) | unbekannt |
bilanzsumme_band | string | ehrliches Größenband nach Bilanzsumme | kein Abschluss |
bilanzsumme_latest | number € | Bilanzsumme des jüngsten Abschlusses | kein Abschluss |
manager_name | string | Name der primären vertretungsbefugten Person (öffentliche Firmenbuchdaten; Geburtsjahr ja, kein Tag/Monat) | keine Angabe |
equity_ratio_latest | 0-1 | Eigenkapitalquote (jüngstes Jahr) | nicht berechenbar |
revenue_latest | number € | Umsatzerlöse (jüngstes Jahr) | kein GuV im jüngsten Abschluss |
growth_profile | string | shrinking/stable/growing/fast_growing | < 2 vergleichbare Jahre |
has_guv_latest | bool | hat der jüngste Abschluss eine GuV? | - (immer gesetzt) |
geschaeftszweig | string | Geschäftszweig (Firmenbuch-Freitext) | nicht eingetragen (~15 %) |
industry_section | string | ÖNACE-2025-Abschnitt A-V (Details unter industry) | keine Klassifizierung vorhanden |
oenace_division | string | ÖNACE-2025-Abteilung (2-Steller, z. B. 85) | keine Klassifizierung vorhanden |
oenace_division_label | string | deutsche Abteilungs-Bezeichnung (z. B. Erziehung und Unterricht) | keine Klassifizierung vorhanden |
oenace_group | string | ÖNACE-2025-Gruppe (3-Steller, z. B. 85.5) | keine Klassifizierung vorhanden |
oenace_group_label | string | deutsche Gruppen-Bezeichnung (z. B. Sonstiger Unterricht) | keine Klassifizierung vorhanden |
oenace_division_2008 / oenace_division_2008_label | string | ÖNACE-2008-Abteilung + Titel (z. B. 45 Kfz-Handel; in 2025 auf 46/47 aufgeteilt) | keine Klassifizierung vorhanden |
oenace_group_2008 / oenace_group_2008_label | string | ÖNACE-2008-Gruppe + Titel (z. B. 45.1) | keine Klassifizierung vorhanden |
get_company_details → ProfilDas Unternehmen liegt unter result. Hier stehen die Roh-Codes
(z. B. legal_form: "GES" = GmbH, bundesland: "O" = Oberösterreich).
Die vollständigen Code-Tabellen stehen weiter unten unter
Code-Tabellen.
identity · Stammdaten| Feld | Typ | Bedeutung |
|---|---|---|
fnr | string | Firmenbuchnummer |
register_id | string | technische ID, Form AT_<fnr> |
euid | string | null | European Unique Identifier (BRIS), z. B. ATBRA.030444-000: EU-weit eindeutige Firmen-ID |
name | string | Firmenwortlaut |
legal_form | string | Rechtsform als Code (GES = GmbH-Familie; alle Codes) |
status | string | active / historical / deleted |
court | string | null | zuständiges Firmenbuchgericht (oft leer) |
location · Sitz| Feld | Typ | Bedeutung |
|---|---|---|
country | string | Land des eingetragenen Sitzes, 1:1 aus dem Firmenbuch (meist AUT; bei ausländischem Sitz z. B. DEU) |
zweigniederlassung | object | Inländische Zweigniederlassung (Straße, PLZ, Ort), zusätzlich zum Sitz — nie als Ersatz |
bundesland | string | Bundesland als Code, z. B. W Wien, O Oberösterreich (alle Codes) |
city | string | Ort |
postal_code | string | Postleitzahl |
street | string | null | Straße (oft leer) |
company · Eckdaten| Feld | Typ | Bedeutung |
|---|---|---|
stammkapital | number | null | Stammkapital in € (oft leer) |
first_filing_year | int | erstes verfügbares Abschlussjahr |
last_filing_year | int | letztes verfügbares Abschlussjahr |
filing_years_available | int | Anzahl vorhandener Abschlussjahre |
founded_year | int | null | Gründungsjahr aus der Ersteintragung (Neueintragung im Firmenbuch); verfügbar für ab ~1995 eingetragene Firmen, sonst null |
founded_source | string | null | Herkunft des Gründungsjahrs (z. B. neueintragung) |
description | null | in V1 nicht befüllt |
size · Größeneinordnung| Feld | Typ | Bedeutung |
|---|---|---|
gkl | string | Größenklasse: W Kleinst, K Klein, M Mittel, G Groß |
bilanzsumme_band | string | Bilanzsummen-Band, small bis very_large |
peer_percentiles | object | Perzentilrang je Kennzahl innerhalb der eigenen Größenklasse (z. B. bilanzsumme: 99.3 = größer als 99,3 %) |
financials · FinanzdatenZuerst die Kopf-Felder, danach die Positionen, jede als Zeitreihe (Jahr → Wert).
| Feld | Typ | Bedeutung |
|---|---|---|
latest_year | int | jüngstes Abschlussjahr |
has_guv_latest | bool | hat das jüngste Jahr eine GuV? |
revenue_basis | string | null | Herkunft des Umsatzwerts |
revenue_year | int | null | Abschlussjahr, aus dem latest.revenue stammt |
revenue_basis_change | object | null | Basis-Wechsel-Hinweis (verkürzte GuV, §279 UGB): Umsatzerlöse nicht mehr offengelegt, Rohergebnis läuft weiter |
register_documents | object | null | Abschluss-Dokumente, die das Register nur als PDF führt (Konzernabschluss, HV-Protokoll); Original via get_document |
konzern | bool | Kennzahlen stammen aus einem Konzernabschluss (konsolidierte Zahlen der Gruppe) — nie stillschweigend mit Einzelabschluss-Werten gemischt |
filings[].parsed_source | string | null | null = strukturiertes XML; pdf_text_llm_v1 = aus dem amtlichen PDF extrahiert (arithmetisch validiert, je Wert als PDF_EXTRACTED gekennzeichnet) |
latest | object | Kennwerte des jüngsten Jahres (Teilmenge) |
bilanz | object | Bilanzpositionen (siehe unten) |
guv | object | GuV-Positionen (siehe unten; leer {} ohne GuV) |
financials.bilanz| Position | Bedeutung |
|---|---|
| Summe | |
bilanzsumme | Bilanzsumme (Summe aller Aktiva bzw. Passiva) |
| Aktiva · Vermögen | |
anlagevermoegen | Anlagevermögen (langfristig gebundenes Vermögen) |
sachanlagen | Sachanlagen (Grundstücke, Gebäude, Maschinen) |
finanzanlagen | Finanzanlagen (Beteiligungen, Wertpapiere) |
umlaufvermoegen | Umlaufvermögen (kurzfristig gebundenes Vermögen) |
vorraete | Vorräte (Lagerbestände) |
forderungen | Forderungen (z. B. aus Lieferungen und Leistungen) |
cash | Liquide Mittel (Kassa, Bankguthaben) |
| Passiva · Kapital | |
eigenkapital | Eigenkapital |
stammkapital | Stammkapital (gezeichnetes Kapital) |
kapitalruecklagen | Kapitalrücklagen |
gewinnruecklagen | Gewinnrücklagen |
bilanzgewinn_verlust | Bilanzgewinn / -verlust |
rueckstellungen | Rückstellungen |
verbindlichkeiten | Verbindlichkeiten (Fremdkapital / Schulden) |
financials.guv · nur bei has_guv (~3 % der Firmen)Zur Offenlegung der Gewinn- und Verlustrechnung (GuV) sind gemäß § 277 UGB ausschließlich mittelgroße und große Kapitalgesellschaften verpflichtet. Maßgeblich ist, ob an zwei aufeinanderfolgenden Abschlussstichtagen mindestens zwei der folgenden Schwellenwerte (§ 221 UGB; seit 2024) überschritten werden:
Kleine und Kleinstkapitalgesellschaften haben gemäß § 278 UGB lediglich die Bilanz offenzulegen.
| Position | Bedeutung |
|---|---|
umsatzerloese | Umsatzerlöse: nur beim Gesamtkostenverfahren |
rohergebnis | Rohergebnis (Umsatz abzgl. Herstellkosten): nur beim Umsatzkostenverfahren |
materialaufwand | Materialaufwand: nur beim Gesamtkostenverfahren |
personalaufwand | Personalaufwand |
abschreibungen | Abschreibungen |
ebit | Betriebserfolg (operatives Ergebnis vor Finanzergebnis und Steuern), § 231 Abs 2: nahezu immer vorhanden |
ebitda | Betriebserfolg zzgl. Abschreibungen |
jahresueberschuss | Jahresüberschuss / -fehlbetrag: nahezu immer vorhanden |
operating_result | Betriebserfolg, korrekt benannt (identisch mit ebit): nur wenn die GuV Finanzergebnis und Steuern separat ausweist (~8 %) |
ebit_strict | echtes EBIT = Ergebnis vor Steuern + Zinsaufwand: nur bei separatem Ausweis (~8 %), sonst nicht enthalten |
umsatzerloese und materialaufwand aus, das
Umsatzkostenverfahren stattdessen rohergebnis (Umsatz abzüglich
Herstellkosten). Deshalb fehlt bei rund 40 % der GuVs die Zeile umsatzerloese
: der Umsatz steckt dann im rohergebnis. Das Feld revenue_basis auf
dem Datensatz nennt, aus welcher der beiden Quellen der Umsatzwert stammt.ebit ist der Betriebserfolg
(operatives Ergebnis vor Finanzergebnis und Steuern) und nahezu immer vorhanden;
operating_result ist derselbe Wert, korrekt benannt. Das echte EBIT
(ebit_strict, inkl. Finanzergebnis = Ergebnis vor Steuern + Zinsaufwand) sowie
operating_result erscheinen nur, wenn die GuV Finanzergebnis und Steuern separat
ausweist: das betrifft rund 8 % der Abschlüsse; sonst sind diese beiden Felder nicht
enthalten. Bei Gesellschaften mit wesentlichem Finanz- oder Beteiligungsergebnis (etwa
Holdings) weichen Betriebserfolg und echtes EBIT spürbar ab.guv = {}, revenue_latest = null, und margenbasierte Kennzahlen
bleiben ohne Wert. Gezielt filtern mit has_guv / has_guv_latest.ratios · Kennzahlen13 Kennzahlen, jede als Zeitreihen-Objekt. Margen- und Renditekennzahlen brauchen eine GuV und bleiben sonst leer.
| Kennzahl | Bedeutung |
|---|---|
equity_ratio | Eigenkapitalquote (EK / Bilanzsumme) |
debt_ratio | Fremdkapitalquote (FK / Bilanzsumme) |
debt_to_equity | Verschuldungsgrad (FK / EK) |
working_capital_ratio | Working-Capital-Quote |
anlagedeckungsgrad_1 | Anlagedeckungsgrad I (EK / Anlagevermögen) |
ebit_margin | Marge auf Betriebserfolg-Basis (operating_result / Umsatz) |
ebit_strict_margin | Marge auf echtem EBIT (ebit_strict / Umsatz); null, wenn ebit_strict null |
ebitda_margin | EBITDA-Marge (EBITDA / Umsatz) |
net_margin | Nettomarge (Jahresüberschuss / Umsatz) |
personalkostenquote | Personalkostenquote (Personalaufwand / Umsatz) |
materialaufwandsquote | Materialaufwandsquote (Materialaufwand / Umsatz) |
roa | Gesamtkapitalrendite (ROA) |
roe | Eigenkapitalrendite (ROE) |
capital_profile | qualitatives Kapitalstruktur-Profil |
Jedes Kennzahl-Objekt enthält u. a. latest,
latest_year, history (Jahr → Wert), avg_3y/avg_5y,
min_5y/max_5y, volatility, trend sowie
Wachstumsmaße.
growth · Wachstum| Feld | Typ | Bedeutung |
|---|---|---|
profile | string | null | shrinking / stable / growing / fast_growing (leer bei < 2 vergleichbaren Jahren) |
method | string | null | Berechnungsbasis des Profils |
employees · Beschäftigte| Feld | Typ | Bedeutung |
|---|---|---|
latest / latest_year / history | object | null | Beschäftigtenzahl je Jahr, oft leer, da das Firmenbuch Beschäftigtenzahlen nur lückenhaft führt |
filings · Eingereichte Abschlüsse + events| filings[]-Feld | Typ | Bedeutung |
|---|---|---|
stichtag | string | Bilanzstichtag des Abschlusses |
format | string | Quellformat (z. B. legacy_finanzonline, jab_4_0) |
parsed | bool | maschinell ausgewertet? |
gkl | string | Größenklasse zum Abschluss |
doc_key · document_url · pdf_doc_key | string | null | Dokument-Verweise (teils leer) |
events[], Registerereignisse (Vollzüge), abgeleitet aus dem täglichen Änderungs-Feed ab 1. Juli 2026. Der amtliche Auszug liefert kein Vollzugs-Logbuch; wir vergleichen bei jeder Tages-Aktualisierung die Stammdaten und erfassen Abweichungen als typisierte Ereignisse (name_change, seat_change, legal_form_change, management_change, capital_change) mit date, description und source. Bei Kapitaländerungen zusätzlich capital_from/capital_to, bei Geschäftsführungs-Änderungen managers_added/managers_removed (Rolle + Name). Zwei Ebenen: die detaillierten Ereignisse (mit Vorher/Nachher) werden ab 1. Juli 2026 erfasst; zusätzlich gibt es gröbere historische Register-Ereignisse (nur Typ + Datum, source=change_feed: founding, deletion, merger, split, conversion, capital_change, legal_form_change u. a.) zurück bis ~2020. Firmenübergreifend abfragbar über list_events (siehe unten).
financial_institution · Reguliertes FinanzunternehmenNur bei Banken, Versicherungen und ähnlichen regulierten Instituten vorhanden. Quelle ist das amtliche Register (OeNB-Bankenliste, per Firmenbuchnummer verknüpft; Versicherer via EIOPA/GLEIF in Vorbereitung), kein Namens-Raten.
| Feld | Typ | Bedeutung |
|---|---|---|
kind | string | bank, insurer, pensionskasse, vorsorgekasse, fund, other_financial |
source | string | register (amtliche Liste, eindeutig) oder heuristic (Namens-Fallback) |
caveat | string | Hinweis: Banken (BWG) / Versicherer (VAG) bilanzieren nach eigenem Schema, UGB-Kennzahlen fehlen/abweichen |
Auf der Such-Karte erscheint dazu das Flag is_financial_institution (bool).
industry · Branche (ÖNACE / NACE)Für rund 95 % der Firmen ist die Branche die amtliche ÖNACE-2025-Zuordnung des Registers (Statistik Austria, offener HVD-Datensatz, source = register): deterministisch, monatlich aktualisiert, mit vollem Pfad bis zur 5-stelligen Subklasse. Nur die restlichen ~5 % (ohne amtliche Zuordnung) werden aus dem Firmenbuch-Geschäftszweig (Freitext) klassifiziert. oenace und nace sind symmetrisch aufgebaut und tragen per Konstruktion dieselben Codes (ÖNACE 2025 = EU NACE Rev. 2.1); ÖNACE mit deutschen und englischen Titeln, NACE mit den offiziellen englischen (NACE hat keine nationale Subklasse und endet auf Klassenebene). Der Original-Geschäftszweig bleibt immer erhalten. Hinweis: Dieser Block hieß früher branch und wurde umbenannt und erweitert.
| Feld | Typ | Bedeutung |
|---|---|---|
geschaeftszweig | string | Original-Geschäftszweig (Freitext) |
oenace.section / section_label_de / section_label_en | string | ÖNACE-2025-Abschnitt A-V + Titel DE/EN |
oenace.division / division_label_de / division_label_en | string | Abteilung (2-Steller, z. B. 68) + Titel DE/EN |
oenace.group / group_label_de / group_label_en | string | Gruppe (z. B. 68.3) + Titel DE/EN |
oenace.class / subclass / code + *_label_de/*_label_en | string | Klasse (z. B. 11.07), 5-stellige Subklasse + code = amtlicher 5-Steller (z. B. 11070): bei source=register |
oenace.version | string | OENACE_2025 |
nace.section / division / group + *_label | string | EU NACE Rev. 2.1: identische Codes, offizielle englische Titel, version = NACE_REV_2.1 |
oenace_2008.section / division / group / class + *_label_de/*_label_en | string | der ÖNACE-2008-Zwilling, nur bei Freitext-Klassifikation (der amtliche Register-Pfad liefert direkt den 2025-Code); version = OENACE_2008 |
code_2008 | string | zugewiesene ÖNACE-2008-Klasse: nur bei Freitext-Klassifikation (nicht bei source=register) |
source · classified_from | string | register (amtliche Statistik-Austria-Zuordnung, maßgeblich): sonst lexicon / llm · Basis official_register bzw. geschaeftszweig/name |
Ohne Geschäftszweig gilt: kein Raten. Nur eindeutige Firmennamen werden klassifiziert (classified_from: name), sonst ist industry leer. Auf der Such-Karte erscheinen geschaeftszweig, industry_section sowie oenace_division/oenace_group (2025) und oenace_division_2008/oenace_group_2008 samt deutschen Labels.
Zwei Fassungen, beide durchsuchbar. Die Codes sind ÖNACE 2025 (= NACE Rev. 2.1); zusätzlich wird die ÖNACE 2008-Fassung geführt. Die Filter oenace_section/oenace_division/oenace_group matchen beide Fassungen, eine Abfrage in der älteren Systematik läuft also nie ins Leere. Achtung auf die Unterschiede: der Kfz-Handel ist in ÖNACE 2008 die Abteilung 45, in ÖNACE 2025 auf 46/47 aufgeteilt. Die Umschlüsselung ist die offizielle Statistik-Austria-Korrespondenztabelle (deterministisch). list_sectors zeigt, welche Abteilungen je Fassung vorkommen.
management · Geschäftsführung| Feld | Typ | Bedeutung |
|---|---|---|
n_signatories_latest | int | Anzahl Zeichnungsberechtigter (jüngstes Jahr) |
signatories_stable_years | int | Jahre konstanter Geschäftsführung |
primary_manager.age | int | aktuelles Alter des primären GF (jahresbasiert) |
primary_manager.birth_year | int | Geburtsjahr (nur Jahr) |
primary_manager.role_label | string | Funktion (z. B. Geschäftsführer/in) |
primary_manager.vertretung | string | null | Vertretungsart (Einzel- / Gemeinschaftsvertretung) |
signatories[] | Liste | Vollständige Zeichnungsberechtigte (alle Organe: GF + Prokuristen …): je Eintrag name (nur mit Rechtsgrundlage), role_label, vertretung, birth_year (nur Jahr), age |
get_full_record → voller DatensatzEnthält alles aus dem Profil plus:
financials.positions, vollständige 317-Positionen-Taxonomie (jede UGB-Position)financials.passthrough, unbekannte Quell-Codes inkl. Historie (verlustfrei)financials.completeness, Qualitätsmaß (Positionsanzahl je Jahr)financials.guv_years, Liste der Jahre mit GuVmanagement.signatories_history, Zeichnungsberechtigte je Jahrderivations, metrics_version + Formel-Registry der KennzahlenAuch hier dieselbe Regel: Namen der Organe sind öffentliche Firmenbuch-Daten (Einzelabfrage), Geburtsdaten nur jahresgenau.
list_events · get_event_stats → Änderungs-Feed (Pro)Firmenübergreifender Feed der Registeränderungen, die Markt- und Deal-Sourcing-Sicht: „welche Firmen haben Geschäftsführung geändert / Kapital erhöht / den Sitz verlegt, wo, seit wann". Für die Änderungshistorie einer bekannten Firma genügt get_company_details (Feld events[]).
list_events · Filter| Argument | Bedeutung |
|---|---|
types | eine/mehrere aus name_change / seat_change / legal_form_change / capital_change / management_change |
since / until | Zeitraum (ISO-Datum); Standard: letzte 30 Tage |
bundesland · oenace_section · oenace_division · legal_form | dieselben Facetten wie search_companies |
fnrs | Watchlist, nur diese Firmenbuchnummern beobachten |
page · page_size | Seite (1) · Treffer je Seite (25, max 100) |
Rückgabe je Ereignis: fnr, name, date, type, description, bei Kapital capital_from/capital_to, bei Geschäftsführung managers_added/managers_removed (Rolle + Name), plus bundesland, legal_form, industry_section. Sortiert nach Datum (neueste zuerst).
get_event_stats liefert zu denselben Filtern Zähler nach Typ und nach Bundesland, für Markt-Dashboards („wie viele Kapitalerhöhungen in OÖ diesen Monat").
Firmen statt Ereignisse? Wer Firmen sucht, die ein Ereignis hatten, mit Finanzkontext und nach Größe gereiht -, nutzt den Filter event_signal in search_companies (siehe Abschnitt 5). Die auslösenden Ereignisse hängen dann an jeder Firmenkarte.
capital_from/capital_to, managers_added/managers_removed) werden ab 1. Juli 2026 laufend aus dem täglichen Stammdaten-Vergleich erfasst. Zusätzlich reichen gröbere historische Register-Ereignisse (nur Typ + Datum, source=change_feed) bis ~2020 zurück. Ein leeres Ergebnis heißt: keine Änderung im Zeitraum, keine fehlenden Daten.Argumente von search_companies.
| Filter | Bedeutung |
|---|---|
name | Teilstring im Firmennamen |
legal_form | Rechtsform, z. B. GmbH |
bundesland | Klarname, z. B. Wien |
size_gkl | Größenklasse W/K/M/G |
bilanzsumme_min / _max | Bilanzsumme von / bis (€) |
equity_ratio_min / _max | Eigenkapitalquote von / bis (0-1) |
revenue_min / _max | Umsatz von / bis (€) |
employees_min / _max | Beschäftigte von / bis |
growth_profile | shrinking / stable / growing / fast_growing |
has_guv · has_guv_latest | nur Firmen mit GuV (je / im jüngsten Jahr) |
last_filing_year_min | jüngster Abschluss mindestens aus diesem Jahr |
founded_year_min / _max | Gründungsjahr von / bis |
gf_age_min | primärer GF mindestens X Jahre (Nachfolge-Screen) |
manager_name | Teilstring im Namen der vertretungsbefugten Person (öffentliche Firmenbuchdaten) |
oenace_section / oenace_division / oenace_group | Branche: Abschnitt (A-V), Abteilung (68) oder Gruppe (68.3, präzise Peers). Matcht ÖNACE 2025 und ÖNACE 2008, z. B. Kfz-Handel als 45 (2008) oder 46/47 (2025) |
geschaeftszweig | Teilstring im Geschäftszweig-Freitext |
postal_code / city | PLZ-Präfix (1010 exakt, 10 = alle 10xx) bzw. Ort (Teilstring) |
near | Umkreissuche: { place, radius_km } oder { postal_code, radius_km } (genau eines; Radius 1-150 km). Treffer erhalten distance_km und werden nach Entfernung sortiert. Ein mehrdeutiger Ortsname wird mit den Kandidaten-PLZ abgewiesen. |
query | Freitext-Suche über Name und Tätigkeit; frei mit allen strukturierten Filtern kombinierbar. Jede Karte erhält match_reason (welches Feld traf). |
event_signal (Pro) | Ereignis-getriebene Suche, nur Firmen, die im Zeitraum ein Corporate-Event-Signal hatten: ownership_change (Gesellschafter-Kapitaländerung, oft Anteilsübertragung), leadership_change (GF-/Organ-Wechsel), capital_raise (Kapitalerhöhung), restructuring (Verschmelzung/Spaltung/Einbringung/…), new_company, closure, rebrand, relocation. Kombiniert mit allen Finanz-/Profilfiltern; jede Karte erhält die auslösenden events + latest_event_date. Das ist die Deal-Sourcing-/Vertriebs-Trigger-Sicht. |
event_since / event_until | Zeitfenster für event_signal (ISO-Datum); Standard: letzte 365 Tage |
status | active / inactive / all |
Sortierung: sort = { field, descending } über
bilanzsumme, revenue, equity_ratio,
employees, last_filing_year,
revenue_growth_1y, revenue_growth_3y, revenue_growth_5y
(Umsatzwachstum: 1 Jahr, 3- und 5-Jahres-CAGR; nur bei mehrjähriger GuV, sonst zuletzt gereiht)
(oder distance bei
einer Umkreissuche). Standard: Bilanzsumme absteigend. Ein unbekanntes Sortierfeld wird
mit der Liste der gültigen Felder abgewiesen.
Seiten: page (ab 1), page_size (Standard 25).
has_more (weitere Seiten vorhanden), applied_filters (die
tatsächlich angewandten, normierten Filter, z. B. „Wien" → W) und, wenn eine
Suche mit ≥ 2 Filtern 0 Treffer ergibt, relaxations: welcher
eine Filter fallen sollte, um Treffer zu erhalten (mit Trefferzahl je Variante).
So findet ein KI-Agent in einem Aufruf die richtige Einschränkung statt
blind zu variieren. Namenssuchen sind relevanz-sortiert (exakte/Präfix-Treffer zuerst).Bundesland (Code → Klarname): B Burgenland · K Kärnten ·
N Niederösterreich · O Oberösterreich · S Salzburg ·
St Steiermark · T Tirol · V Vorarlberg · W Wien.
Rechtsform: Der granulare Firmenbuch-Code steht im Profil
(legal_form). Die GmbH-Familie ist das Präfix GE… ohne
GEN (GES ≈ 99,7 %); die Suchkarte labelt sie als GmbH.
GEN ist die Genossenschaft (Label eGen) und fällt nicht in den GmbH-Filter.
Größenklasse gkl: W Kleinst/Mikro · K Klein ·
M Mittel · G Groß.
So sieht eine vollständige get_company_details-Antwort für ein
Musterunternehmen aus (gekürzt; Zeitreihen exemplarisch). Felder mit
null bzw. leere Objekte/Listen sind ebenfalls Teil der Antwort und werden,
wo sinnvoll, mitgesendet, damit der Agent den Unterschied zwischen „nicht
vorhanden" und „unbekannt" auswerten kann.
Hinweis: Dieses Beispiel ist ein Musterdatensatz zur Veranschaulichung der Struktur.
// Antwort-Umschlag "schema_version": "1.0", "data_version": "2026-06-27", "provenance": { "source": "Österreichisches Firmenbuch / BMJ, Justiz", "license": "CC BY 4.0", "data_version": "2026-06-27", "schema_version": "1.0", "built_at": "2026-06-27T07:32:14Z" }, "result": { "identity": { "fnr": "999999x", "register_id": "AT_999999x", "name": "Beispiel Industrie GmbH", "legal_form": "GES", // Code → Label "GmbH" (siehe Abschnitt 6) "status": "active", "court": null }, "location": { "country": "AUT", "bundesland": "O", // Oberösterreich "city": "Linz", "postal_code": "4020", "street": null }, "company": { "stammkapital": 35000, "first_filing_year": 2014, "last_filing_year": 2024, "filing_years_available": 11, "founded_year": 2013, "founded_source": "first_filing-1", "description": "Unternehmensberatung" }, "size": { "gkl": "M", // Mittel "bilanzsumme_band": "large", "peer_percentiles": { "bilanzsumme": 82.4, "equity_ratio": 71.3, "revenue": 68.9 } }, "financials": { "latest_year": 2024, "has_guv_latest": true, "revenue_basis": "umsatzerloese", "latest": { "bilanzsumme": 12450000, "eigenkapital": 5230000, "umsatzerloese": 18900000, "ebit": 1430000, "ebitda": 2210000, "jahresueberschuss": 980000 }, "bilanz": { "bilanzsumme": { "latest": 12450000, "latest_year": 2024, "history": { "2022": 10840000, "2023": 11620000, "2024": 12450000 } }, "eigenkapital": { "latest": 5230000, "history": { "2022": 4380000, "2023": 4790000, "2024": 5230000 } } // … weitere Bilanzpositionen (verbindlichkeiten, anlagevermoegen, vorraete, cash, …) }, "guv": { "umsatzerloese": { "latest": 18900000, "history": { "2022": 16200000, "2023": 17550000, "2024": 18900000 } }, "ebit": { "latest": 1430000, "history": { "2022": 1180000, "2023": 1290000, "2024": 1430000 } } "materialaufwand": { "latest": -9100000 }, "personalaufwand": { "latest": -5200000 }, "abschreibungen": { "latest": -780000 }, "ebitda": { "latest": 2210000 }, "jahresueberschuss": { "latest": 980000 } // Umsatzkostenverfahren stattdessen: "rohergebnis" statt umsatzerloese + materialaufwand } }, "ratios": { "equity_ratio": { "latest": 0.42, "latest_year": 2024, "history": { "2022": 0.404, "2023": 0.412, "2024": 0.42 }, "avg_3y": 0.412, "min_5y": 0.39, "max_5y": 0.42, "trend": "rising", "growth_1y": 0.019, "growth_3y_cagr": 0.021 }, "ebit_margin": { "latest": 0.076, "trend": "stable" } // … debt_ratio, debt_to_equity, working_capital_ratio, anlagedeckungsgrad_1, // ebitda_margin, net_margin, personalkostenquote, materialaufwandsquote, // roa, roe, capital_profile }, "growth": { "profile": "growing", "method": "revenue_3y_cagr" }, "employees": null, // im Firmenbuch nur lückenhaft "management": { "n_signatories_latest": 2, "signatories_stable_years": 4, "primary_manager_name": "Maria Beispiel", // öffentliche Firmenbuch-Daten (Name serviert) "primary_manager": { "age": 52, "birth_year": 1974, // nur Jahr (DSGVO) "role_label": "GESCHÄFTSFÜHRER/IN (handelsrechtlich)", "vertretung": "selbständig" } }, "filings": [ { "stichtag": "2024-12-31", "format": "jab40_semantic", "parsed": true, "gkl": "M", "eingereicht": "2025-08-12", "document_url": "https://justizonline.gv.at/…", "pdf_doc_key": null } // … ältere Abschlüsse, sortiert nach stichtag absteigend ], "events": [], "industry": { // Branche, aus dem Geschäftszweig abgeleitet "geschaeftszweig": "Unternehmensberatung", "oenace": { // ÖNACE 2025 (national), Titel DE + EN "section": "N", "section_label_de": "Erbringung von freiberuflichen, wissenschaftlichen und technischen Dienstleistungen", "section_label_en": "Professional, scientific and technical activities", "division": "70", "division_label_de": "Verwaltung und Führung von Unternehmen; Unternehmensberatung", "division_label_en": "Activities of head offices and management consultancy", "group": "70.2", "group_label_de": "Unternehmensberatung", "group_label_en": "Business and other management consultancy activities", "version": "OENACE_2025" }, "nace": { // EU NACE Rev. 2.1, gleiche Codes, engl. Titel "section": "N", "section_label": "Professional, scientific and technical activities", "division": "70", "division_label": "Activities of head offices and management consultancy", "group": "70.2", "group_label": "Business and other management consultancy activities", "version": "NACE_REV_2.1" }, "oenace_2008": { // ÖNACE-2008-Zwilling, symmetrisch, auch durchsuchbar "section": "M", "division": "70", "division_label_de": "Verwaltung und Führung von Unternehmen; Unternehmensberatung", "group": "70.2", "class": "70.22", "version": "OENACE_2008" }, "code_2008": "70.22", // zugewiesene ÖNACE-2008-Klasse "source": "llm", // oder "lexicon" "classified_from": "geschaeftszweig" // oder "name" } }
In der Suchkarte (search_companies)
sind bereits Codes als Labels aufgelöst (z. B. legal_form: "GmbH",
bundesland: "Oberösterreich"). Im vollständigen Profil und im
get_full_record stehen die Roh-Codes; die Tabellen in Abschnitt 6 erklären
die Auflösung.
Jede Antwort trägt provenance.data_version und built_at
(Erstellungszeit der ausgelieferten Daten). Die Daten stammen aus dem
österreichischen Firmenbuch (BMJ, Justiz, EU High Value Dataset,
CC BY 4.0), werden automatisiert verarbeitet und ohne Gewähr auf
Richtigkeit, Vollständigkeit und Aktualität bereitgestellt. Maßgeblich ist stets der
amtliche Firmenbuchauszug.
Entwickler-Variante dieser Seite: FIELD_REFERENCE.md im Repo.