Monitorizar cambios
Detecta nuevas inscripciones en el registro y recibe avisos.
Cuando algo cambia para una empresa en el registro, normalmente quieres saberlo rápido. Hay cuatro caminos para ello. La tabla te ayuda a elegir; debajo se describe cada camino con un ejemplo.
Los caminos comparados
| Camino | Ideal para | Necesitas | Costes |
|---|---|---|---|
| Consultar tú mismo | Empresas concretas, cualquier campo del perfil de empresa, tu propio calendario | Un cron job y almacenamiento para el último estado | El precio del perfil de empresa por consulta |
| Signals | Cambios en todas las empresas por tema y periodo, o de forma dirigida para hasta 5 empresas | Solicitudes periódicas a través de la API | 20 créditos por página |
| Monitoring | Empresas seleccionadas; comprobamos con un calendario fijo y avisamos por webhook | Un endpoint HTTPS accesible públicamente | Un precio por ciclo por monitor durante 30 días |
| Watchlist | Seguir sin servidor propio, en el navegador o en un lector de feeds | Solo la aplicación web | 20 créditos por actualización del feed, como máximo una vez por hora |
Signals, Monitoring y la watchlist usan los mismos temas. Nuevas inscripciones, cambios de datos básicos, cierres y disoluciones, cambios en la administración y cambios de capital están disponibles para cualquier cuenta. Las insolvencias vienen con Pro, las transformaciones y M&A con Max.
Consultar tú mismo con fetch-organization
Si solo te interesan ciertos campos, obtén el perfil de empresa periódicamente y compáralo con el último estado. Pídelo con la entity_id y las funciones que quieres comparar. En el ejemplo, es Hetzner Online GmbH, Ansbach HRB 6089.
curl -G "https://handelsregister.ai/api/v1/fetch-organization" \ -H "x-api-key: TU_CLAVE_API" \ --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": "TU_CLAVE_API"}, 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": "TU_CLAVE_API" }, }); const data = await response.json();
1{2 "entity_id": "94eb910fef13f94585c48c263fa446d4",3 "name": "Hetzner Online GmbH",4 "status": "ACTIVE",5 "address": {6 "house_number": "25",7 "street": "Industriestraße",8 "postal_code": "91710",9 "city": "Gunzenhausen",10 "county": "Weißenburg-Gunzenhausen",11 "state": "Bayern",12 "country": "DEU",13 "coordinates": {14 "latitude": 49.12483,15 "longitude": 10.7805216 }17 },18 "capital": {19 "current": {20 "amount": 50000,21 "currency": "EUR",22 "kind": "STAMMKAPITAL"23 },24 "history": [25 {26 "value": {27 "amount": 50000,28 "currency": "EUR",29 "kind": "GRUNDKAPITAL"30 },31 "effective_from": "2002-10-15",32 "effective_to": null33 }34 ]35 },36 "related_persons": {37 "current": [38 {39 "entity_id": "ea3a1670232611a992727ed067216d07",40 "label": "MANAGING_DIRECTOR",41 "role": {42 "en": {43 "long": "Managing Director",44 "short": "MD"45 },46 "de": {47 "long": "Geschäftsführer",48 "short": "GF"49 }50 },51 "name": "Paul Musterwald",52 "start_date": "2019-01-04",53 "end_date": null,54 "birth_date": "1989-07-18",55 "name_parts": {56 "given": "Paul",57 "family": "Musterwald",58 "maiden": null,59 "canonical_name": "Musterwald, Paul",60 "previous_names": null61 },62 "location": {63 "home": {64 "city": "Exempelingen i. Bay."65 }66 },67 "organization_representation_scheme": {68 "current": [69 "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."70 ],71 "history": [72 {73 "value": [74 "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."75 ],76 "effective_from": "2002-10-15",77 "effective_to": "2015-07-28"78 },79 {80 "value": [81 "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."82 ],83 "effective_from": "2015-07-28",84 "effective_to": null85 }86 ]87 },88 "role_representation_scheme": {89 "current": [90 "einzelvertretungsberechtigt."91 ],92 "history": [93 {94 "value": [95 "einzelvertretungsberechtigt."96 ],97 "effective_from": "2019-01-04",98 "effective_to": null99 }100 ]101 }102 },103 {104 "entity_id": "dd7e94b41f78de4195cc70c6b0f732f3",105 "label": "MANAGING_DIRECTOR",106 "role": {107 "en": {108 "long": "Managing Director",109 "short": "MD"110 },111 "de": {112 "long": "Geschäftsführer",113 "short": "GF"114 }115 },116 "name": "Jan Musterhuber",117 "start_date": "2019-01-04",118 "end_date": null,119 "birth_date": "1955-11-06",120 "name_parts": {121 "given": "Jan",122 "family": "Musterhuber",123 "maiden": null,124 "canonical_name": "Musterhuber, Jan",125 "previous_names": null126 },127 "location": {128 "home": {129 "city": "Probeingen"130 }131 },132 "organization_representation_scheme": {133 "current": [134 "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."135 ],136 "history": [137 {138 "value": [139 "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."140 ],141 "effective_from": "2002-10-15",142 "effective_to": "2015-07-28"143 },144 {145 "value": [146 "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."147 ],148 "effective_from": "2015-07-28",149 "effective_to": null150 }151 ]152 },153 "role_representation_scheme": {154 "current": [155 "einzelvertretungsberechtigt."156 ],157 "history": [158 {159 "value": [160 "einzelvertretungsberechtigt."161 ],162 "effective_from": "2019-01-04",163 "effective_to": null164 }165 ]166 }167 },168 {169 "entity_id": "08ed5f967956831ca6588930fd2693ed",170 "label": "MANAGING_DIRECTOR",171 "role": {172 "en": {173 "long": "Managing Director",174 "short": "MD"175 },176 "de": {177 "long": "Geschäftsführer",178 "short": "GF"179 }180 },181 "name": "Max Felix Mustermann",182 "start_date": "2015-07-28",183 "end_date": null,184 "birth_date": "1976-01-15",185 "name_parts": {186 "given": "Max Felix",187 "family": "Mustermann",188 "maiden": null,189 "canonical_name": "Mustermann, Max Felix",190 "previous_names": null191 },192 "location": {193 "home": {194 "city": "Musterheim"195 }196 },197 "organization_representation_scheme": {198 "current": [199 "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."200 ],201 "history": [202 {203 "value": [204 "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."205 ],206 "effective_from": "2002-10-15",207 "effective_to": "2015-07-28"208 },209 {210 "value": [211 "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."212 ],213 "effective_from": "2015-07-28",214 "effective_to": null215 }216 ]217 },218 "role_representation_scheme": {219 "current": [220 "einzelvertretungsberechtigt; mit der Befugnis, im Namen der Gesellschaft mit sich im eigenen Namen oder als Vertreter eines Dritten Rechtsgeschäfte abzuschließen."221 ],222 "history": [223 {224 "value": [225 "einzelvertretungsberechtigt; mit der Befugnis, im Namen der Gesellschaft mit sich im eigenen Namen oder als Vertreter eines Dritten Rechtsgeschäfte abzuschließen."226 ],227 "effective_from": "2015-07-28",228 "effective_to": null229 }230 ]231 }232 }233 ],234 "past": [235 {236 "entity_id": "ea3a1670232611a992727ed067216d07",237 "label": "PROCURA",238 "role": {239 "en": {240 "long": "Procura",241 "short": "Procura"242 },243 "de": {244 "long": "Prokura",245 "short": "Prokura"246 }247 },248 "name": "Paul Musterwald",249 "start_date": "2015-07-28",250 "end_date": "2019-01-04",251 "birth_date": "1989-07-18",252 "name_parts": {253 "given": "Paul",254 "family": "Musterwald",255 "maiden": null,256 "canonical_name": "Musterwald, Paul",257 "previous_names": null258 },259 "location": {260 "home": {261 "city": "Exempelingen i. Bay."262 }263 },264 "organization_representation_scheme": {265 "latest": [266 "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."267 ],268 "history": [269 {270 "value": [271 "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."272 ],273 "effective_from": "2002-10-15",274 "effective_to": "2015-07-28"275 },276 {277 "value": [278 "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."279 ],280 "effective_from": "2015-07-28",281 "effective_to": null282 }283 ]284 },285 "role_representation_scheme": {286 "latest": [287 "Gesamtprokura gemeinsam mit einem anderen Prokuristen:"288 ],289 "history": [290 {291 "value": [292 "Gesamtprokura gemeinsam mit einem anderen Prokuristen:"293 ],294 "effective_from": "2015-07-28",295 "effective_to": "2019-01-04"296 }297 ]298 }299 },300 {301 "entity_id": "dd7e94b41f78de4195cc70c6b0f732f3",302 "label": "PROCURA",303 "role": {304 "en": {305 "long": "Procura",306 "short": "Procura"307 },308 "de": {309 "long": "Prokura",310 "short": "Prokura"311 }312 },313 "name": "Jan Musterhuber",314 "start_date": "2015-07-28",315 "end_date": "2019-01-04",316 "birth_date": "1955-11-06",317 "name_parts": {318 "given": "Jan",319 "family": "Musterhuber",320 "maiden": null,321 "canonical_name": "Musterhuber, Jan",322 "previous_names": null323 },324 "location": {325 "home": {326 "city": "Probeingen"327 }328 },329 "organization_representation_scheme": {330 "latest": [331 "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."332 ],333 "history": [334 {335 "value": [336 "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."337 ],338 "effective_from": "2002-10-15",339 "effective_to": "2015-07-28"340 },341 {342 "value": [343 "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."344 ],345 "effective_from": "2015-07-28",346 "effective_to": null347 }348 ]349 },350 "role_representation_scheme": {351 "latest": [352 "Gesamtprokura gemeinsam mit einem anderen Prokuristen:"353 ],354 "history": [355 {356 "value": [357 "Gesamtprokura gemeinsam mit einem anderen Prokuristen:"358 ],359 "effective_from": "2015-07-28",360 "effective_to": "2019-01-04"361 }362 ]363 }364 },365 {366 "entity_id": "08ed5f967956831ca6588930fd2693ed",367 "label": "BOARD",368 "role": {369 "en": {370 "long": "Board Member",371 "short": "Board"372 },373 "de": {374 "long": "Vorstandsmitglied",375 "short": "Vorstand"376 }377 },378 "name": "Max Felix Mustermann",379 "start_date": "2002-10-15",380 "end_date": "2015-07-28",381 "birth_date": "1976-01-15",382 "name_parts": {383 "given": "Max Felix",384 "family": "Mustermann",385 "maiden": null,386 "canonical_name": "Mustermann, Max Felix",387 "previous_names": null388 },389 "location": {390 "home": {391 "city": "Musterheim"392 }393 },394 "organization_representation_scheme": {395 "latest": [396 "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."397 ],398 "history": [399 {400 "value": [401 "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."402 ],403 "effective_from": "2002-10-15",404 "effective_to": "2015-07-28"405 },406 {407 "value": [408 "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."409 ],410 "effective_from": "2015-07-28",411 "effective_to": null412 }413 ]414 },415 "role_representation_scheme": {416 "latest": [417 "einzelvertretungsberechtigt; mit der Befugnis, im Namen der Gesellschaft mit sich im eigenen Namen oder als Vertreter eines Dritten Rechtsgeschäfte abzuschließen"418 ],419 "history": [420 {421 "value": [422 "einzelvertretungsberechtigt; mit der Befugnis, im Namen der Gesellschaft mit sich im eigenen Namen oder als Vertreter eines Dritten Rechtsgeschäfte abzuschließen"423 ],424 "effective_from": "2002-10-15",425 "effective_to": "2015-07-28"426 }427 ]428 }429 }430 ]431 },432 "meta": {433 "request_credit_cost": 7,434 "credits_remaining": 145435 }436}
El script compara nombre, estado, dirección, capital y administración con la última ejecución e imprime cada cambio. Ejecútalo, por ejemplo, una vez por semana como cron job.
import json import pathlib import requests API = "https://handelsregister.ai/api/v1/fetch-organization" HEADERS = {"x-api-key": "TU_CLAVE_API", "Accept": "application/json"} EMPRESAS = ["94eb910fef13f94585c48c263fa446d4"] # los entity_ids de tus empresas ESTADO = pathlib.Path("estado.json") def snapshot(entity_id): response = requests.get( API, params={"q": entity_id, "feature": "related_persons"}, headers=HEADERS, timeout=120, ) response.raise_for_status() data = response.json() persons = (data.get("related_persons") or {}).get("current") or [] return { "name": data.get("name"), "status": data.get("status"), "address": data.get("address"), "capital": (data.get("capital") or {}).get("current"), "persons": sorted(f'{p["name"]} ({p["label"]})' for p in persons), } old = json.loads(ESTADO.read_text()) if ESTADO.exists() else {} new = {entity_id: snapshot(entity_id) for entity_id in EMPRESAS} for entity_id, now in new.items(): before = old.get(entity_id) if before is None: continue for field, value in now.items(): if before.get(field) != value: print(f"{now['name']}: {field} cambiado: {before.get(field)} -> {value}") ESTADO.write_text(json.dumps(new, ensure_ascii=False, indent=2))
Cada ejecución cuesta hasta 7 créditos por empresa: los datos básicos y la administración, esta solo cuando la API encuentra personas. Para muchas empresas o intervalos cortos, Signals o Monitoring salen más baratos.
Buscar cambios con Signals
Las Signals son cambios del Handelsregister (Registro Mercantil) y de los anuncios de insolvencia, preparados como eventos uniformes. Filtras en todas las empresas por tema (topics) y periodo (from, to).
curl -G "https://handelsregister.ai/api/v1/signals" \ -H "x-api-key: TU_CLAVE_API" \ --data-urlencode 'topics=CAPITAL_CHANGES' \ --data-urlencode 'from=2026-10-26' \ --data-urlencode 'to=2026-10-30'
import requests response = requests.get( "https://handelsregister.ai/api/v1/signals", headers={"x-api-key": "TU_CLAVE_API"}, params={ "topics": "CAPITAL_CHANGES", "from": "2026-10-26", "to": "2026-10-30", }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/signals"); url.searchParams.append("topics", "CAPITAL_CHANGES"); url.searchParams.append("from", "2026-10-26"); url.searchParams.append("to", "2026-10-30"); const response = await fetch(url, { headers: { "x-api-key": "TU_CLAVE_API" }, }); const data = await response.json();
1{2 "signals": [3 {4 "event": {5 "id": "3abb946f2d6030f1619ed833b226faed",6 "topic": "CAPITAL_CHANGES",7 "topic_name": {8 "de": "Kapitaländerungen",9 "en": "Capital changes"10 },11 "occurred_on": "2026-10-30",12 "announced_on": "2026-10-30",13 "date_basis": "REGISTER_ENTRY"14 },15 "organization": {16 "type": "ORGANIZATION",17 "entity_id": "c6b0c0721497f190aa5dfca1d4573c98",18 "current_profile": {19 "name": "Hans Hörner GmbH",20 "registration": {21 "register_type": "HRB",22 "register_number": "113000",23 "court": "München",24 "register_locality": "Munich",25 "registration_authority_id": "D2601",26 "register_entity_name": "München HRB 113000"27 },28 "legal_form": {29 "name": {30 "de": "Gesellschaft mit beschränkter Haftung"31 },32 "short": {33 "de": "GmbH"34 }35 },36 "seat": {37 "city": "Grafing"38 },39 "status": {40 "code": "ACTIVE"41 }42 }43 },44 "register_entry": {45 "entry_number": "4",46 "entry_date": "2026-10-30",47 "phase": "DECREASED",48 "description_text": "Herabsetzung des Stammkapitals um 25.000,00 EUR auf 25.000,00 EUR",49 "context": "PRIMARY",50 "flags": []51 },52 "source": {53 "kind": "COMMERCIAL_REGISTER"54 },55 "details": {56 "schema": "CAPITAL_CHANGE",57 "capital_kind": "SHARE_CAPITAL",58 "resulting_amount": {59 "amount": "25000.00",60 "currency": "EUR",61 "source_text": "25.000,00 EUR"62 },63 "change_amount": {64 "amount": "25000.00",65 "currency": "EUR",66 "source_text": "25.000,00 EUR"67 }68 }69 },70 {71 "event": {72 "id": "ba5eab558e65d2a4c3059b35e2d155a5",73 "topic": "CAPITAL_CHANGES",74 "topic_name": {75 "de": "Kapitaländerungen",76 "en": "Capital changes"77 },78 "occurred_on": "2026-10-30",79 "announced_on": "2026-10-30",80 "date_basis": "REGISTER_ENTRY"81 },82 "organization": {83 "type": "ORGANIZATION",84 "entity_id": "9bdf1b5c1ae812a39971e45be7d23bb5",85 "current_profile": {86 "name": "Communardo Technologies Group GmbH",87 "registration": {88 "register_type": "HRB",89 "register_number": "46202",90 "court": "Dresden",91 "register_locality": "Dresden",92 "registration_authority_id": "U1104",93 "register_entity_name": "Dresden HRB 46202"94 },95 "legal_form": {96 "name": {97 "de": "Gesellschaft mit beschränkter Haftung"98 },99 "short": {100 "de": "GmbH"101 }102 },103 "seat": {104 "city": "Dresden"105 },106 "status": {107 "code": "ACTIVE"108 }109 }110 },111 "register_entry": {112 "entry_number": "7",113 "entry_date": "2026-10-30",114 "phase": "INCREASED",115 "description_text": "Erhöhung des Stammkapitals um 761,00 EUR auf 32.326,00 EUR",116 "context": "PRIMARY",117 "flags": []118 },119 "source": {120 "kind": "COMMERCIAL_REGISTER"121 },122 "details": {123 "schema": "CAPITAL_CHANGE",124 "capital_kind": "SHARE_CAPITAL",125 "resulting_amount": {126 "amount": "32326.00",127 "currency": "EUR",128 "source_text": "32.326,00 EUR"129 },130 "change_amount": {131 "amount": "761.00",132 "currency": "EUR",133 "source_text": "761,00 EUR"134 }135 }136 },137 {138 "event": {139 "id": "666de98109b29e5270113942cee06f12",140 "topic": "CAPITAL_CHANGES",141 "topic_name": {142 "de": "Kapitaländerungen",143 "en": "Capital changes"144 },145 "occurred_on": "2026-10-29",146 "announced_on": "2026-10-29",147 "date_basis": "REGISTER_ENTRY"148 },149 "organization": {150 "type": "ORGANIZATION",151 "entity_id": "979610227990c4c5368c9356923080df",152 "current_profile": {153 "name": "Norlando GmbH",154 "registration": {155 "register_type": "HRB",156 "register_number": "25441",157 "court": "Bonn",158 "register_locality": "Bonn",159 "registration_authority_id": "R3201",160 "register_entity_name": "Bonn HRB 25441"161 },162 "legal_form": {163 "name": {164 "de": "Gesellschaft mit beschränkter Haftung"165 },166 "short": {167 "de": "GmbH"168 }169 },170 "seat": {171 "city": "Bonn"172 },173 "status": {174 "code": "ACTIVE"175 }176 }177 },178 "register_entry": {179 "entry_number": "2",180 "entry_date": "2026-10-29",181 "phase": "INCREASED",182 "description_text": "Erhöhung des Stammkapitals von 25.000,00 EUR um 75.000,00 EUR auf 100.000,00 EUR",183 "context": "PRIMARY",184 "flags": []185 },186 "source": {187 "kind": "COMMERCIAL_REGISTER"188 },189 "details": {190 "schema": "CAPITAL_CHANGE",191 "capital_kind": "SHARE_CAPITAL",192 "resulting_amount": {193 "amount": "100000.00",194 "currency": "EUR",195 "source_text": "100.000,00 EUR"196 },197 "change_amount": {198 "amount": "75000.00",199 "currency": "EUR",200 "source_text": "75.000,00 EUR"201 }202 }203 },204 {205 "event": {206 "id": "608f0aaddc78a4b9337587f111de0ece",207 "topic": "CAPITAL_CHANGES",208 "topic_name": {209 "de": "Kapitaländerungen",210 "en": "Capital changes"211 },212 "occurred_on": "2026-10-29",213 "announced_on": "2026-10-29",214 "date_basis": "REGISTER_ENTRY"215 },216 "organization": {217 "type": "ORGANIZATION",218 "entity_id": "2dea43c1c48f00f33709b577bec048b0",219 "current_profile": {220 "name": "Aksahin Holding GmbH",221 "registration": {222 "register_type": "HRB",223 "register_number": "10252",224 "court": "Recklinghausen",225 "register_locality": "Recklinghausen",226 "registration_authority_id": "R2204",227 "register_entity_name": "Recklinghausen HRB 10252"228 },229 "legal_form": {230 "name": {231 "de": "Gesellschaft mit beschränkter Haftung"232 },233 "short": {234 "de": "GmbH"235 }236 },237 "seat": {238 "city": "Recklinghausen"239 },240 "status": {241 "code": "ACTIVE"242 }243 }244 },245 "register_entry": {246 "entry_number": "2",247 "entry_date": "2026-10-29",248 "phase": "INCREASED",249 "description_text": "Erhöhung des Stammkapitals um 2,00 EUR auf 25.002,00 EUR",250 "context": "PRIMARY",251 "flags": []252 },253 "source": {254 "kind": "COMMERCIAL_REGISTER"255 },256 "details": {257 "schema": "CAPITAL_CHANGE",258 "capital_kind": "SHARE_CAPITAL",259 "resulting_amount": {260 "amount": "25002.00",261 "currency": "EUR",262 "source_text": "25.002,00 EUR"263 },264 "change_amount": {265 "amount": "2.00",266 "currency": "EUR",267 "source_text": "2,00 EUR"268 }269 }270 },271 {272 "event": {273 "id": "e7b2c5d66bdf3c158f4cfac737fa94fc",274 "topic": "CAPITAL_CHANGES",275 "topic_name": {276 "de": "Kapitaländerungen",277 "en": "Capital changes"278 },279 "occurred_on": "2026-10-29",280 "announced_on": "2026-10-29",281 "date_basis": "REGISTER_ENTRY"282 },283 "organization": {284 "type": "ORGANIZATION",285 "entity_id": "639b277378d2deda22c29275613b6646",286 "current_profile": {287 "name": "UP Projekt 03 GmbH",288 "registration": {289 "register_type": "HRB",290 "register_number": "38108",291 "court": "Dortmund",292 "register_locality": "Dortmund",293 "registration_authority_id": "R2402",294 "register_entity_name": "Dortmund HRB 38108"295 },296 "legal_form": {297 "name": {298 "de": "Gesellschaft mit beschränkter Haftung"299 },300 "short": {301 "de": "GmbH"302 }303 },304 "seat": {305 "city": "Dortmund"306 },307 "status": {308 "code": "ACTIVE"309 }310 }311 },312 "register_entry": {313 "entry_number": "2",314 "entry_date": "2026-10-29",315 "phase": "INCREASED",316 "description_text": "Erhöhung des Stammkapitals von 25.000,00 EUR um 5.000,00 EUR auf 30.000,00 EUR.",317 "context": "PRIMARY",318 "flags": []319 },320 "source": {321 "kind": "COMMERCIAL_REGISTER"322 },323 "details": {324 "schema": "CAPITAL_CHANGE",325 "capital_kind": "SHARE_CAPITAL",326 "resulting_amount": {327 "amount": "30000.00",328 "currency": "EUR",329 "source_text": "30.000,00 EUR"330 },331 "change_amount": {332 "amount": "5000.00",333 "currency": "EUR",334 "source_text": "5.000,00 EUR"335 }336 }337 },338 {339 "event": {340 "id": "dba137d903b8a9dd0bab1cfe3fe68762",341 "topic": "CAPITAL_CHANGES",342 "topic_name": {343 "de": "Kapitaländerungen",344 "en": "Capital changes"345 },346 "occurred_on": "2026-10-29",347 "announced_on": "2026-10-29",348 "date_basis": "REGISTER_ENTRY"349 },350 "organization": {351 "type": "ORGANIZATION",352 "entity_id": "906f01e5d6b10c9251dd39ba30e9df3f",353 "current_profile": {354 "name": "K. Sabelfeld GmbH",355 "registration": {356 "register_type": "HRB",357 "register_number": "18936",358 "court": "Moenchengladbach",359 "register_locality": "Mönchengladbach",360 "registration_authority_id": "R1504",361 "register_entity_name": "Moenchengladbach HRB 18936"362 },363 "legal_form": {364 "name": {365 "de": "Gesellschaft mit beschränkter Haftung"366 },367 "short": {368 "de": "GmbH"369 }370 },371 "seat": {372 "city": "Grevenbroich"373 },374 "status": {375 "code": "ACTIVE"376 }377 }378 },379 "register_entry": {380 "entry_number": "2",381 "entry_date": "2026-10-29",382 "phase": "INCREASED",383 "description_text": "Erhöhung des Stammkapitals von 25.000,00 EUR um 1,00 EUR auf 25.001,00 EUR zum Zwecke der Verschmelzung.",384 "context": "PRIMARY",385 "flags": []386 },387 "source": {388 "kind": "COMMERCIAL_REGISTER"389 },390 "details": {391 "schema": "CAPITAL_CHANGE",392 "capital_kind": "SHARE_CAPITAL",393 "resulting_amount": {394 "amount": "25001.00",395 "currency": "EUR",396 "source_text": "25.001,00 EUR"397 },398 "change_amount": {399 "amount": "1.00",400 "currency": "EUR",401 "source_text": "1,00 EUR"402 }403 }404 },405 {406 "event": {407 "id": "4b707f18b0de4a0752a1ad9178347770",408 "topic": "CAPITAL_CHANGES",409 "topic_name": {410 "de": "Kapitaländerungen",411 "en": "Capital changes"412 },413 "occurred_on": "2026-10-28",414 "announced_on": "2026-10-28",415 "date_basis": "REGISTER_ENTRY"416 },417 "organization": {418 "type": "ORGANIZATION",419 "entity_id": "078c9489680c8ddab48ec56c6946562b",420 "current_profile": {421 "name": "SML Immobilien GmbH",422 "registration": {423 "register_type": "HRB",424 "register_number": "759767",425 "court": "Mannheim",426 "register_locality": "Mannheim",427 "registration_authority_id": "B1601",428 "register_entity_name": "Mannheim HRB 759767"429 },430 "legal_form": {431 "name": {432 "de": "Gesellschaft mit beschränkter Haftung"433 },434 "short": {435 "de": "GmbH"436 }437 },438 "seat": {439 "city": "Reichartshausen"440 },441 "status": {442 "code": "ACTIVE"443 }444 }445 },446 "register_entry": {447 "entry_number": "2",448 "entry_date": "2026-10-28",449 "phase": "INCREASED",450 "description_text": "Stammkapital um 100,00 EUR auf 25.100,00 EUR erhöht.",451 "context": "PRIMARY",452 "flags": []453 },454 "source": {455 "kind": "COMMERCIAL_REGISTER"456 },457 "details": {458 "schema": "CAPITAL_CHANGE",459 "capital_kind": "SHARE_CAPITAL",460 "resulting_amount": {461 "amount": "25100.00",462 "currency": "EUR",463 "source_text": "25.100,00 EUR"464 },465 "change_amount": {466 "amount": "100.00",467 "currency": "EUR",468 "source_text": "100,00 EUR"469 }470 }471 },472 {473 "event": {474 "id": "e849cccdc57ee89b6585956ece263440",475 "topic": "CAPITAL_CHANGES",476 "topic_name": {477 "de": "Kapitaländerungen",478 "en": "Capital changes"479 },480 "occurred_on": "2026-10-28",481 "announced_on": "2026-10-28",482 "date_basis": "REGISTER_ENTRY"483 },484 "organization": {485 "type": "ORGANIZATION",486 "entity_id": "dd006e84d8117f6a4502cfa14757a492",487 "current_profile": {488 "name": "MPS Messe und Promotion Services GmbH",489 "registration": {490 "register_type": "HRB",491 "register_number": "86946",492 "court": "Frankfurt am Main",493 "register_locality": "Frankfurt",494 "registration_authority_id": "M1201",495 "register_entity_name": "Frankfurt am Main HRB 86946"496 },497 "legal_form": {498 "name": {499 "de": "Gesellschaft mit beschränkter Haftung"500 },501 "short": {502 "de": "GmbH"503 }504 },505 "seat": {506 "city": "Frankfurt am Main"507 },508 "status": {509 "code": "ACTIVE"510 }511 }512 },513 "register_entry": {514 "entry_number": "3",515 "entry_date": "2026-10-28",516 "phase": "CHANGED",517 "description_text": "Umstellung des Stammkapitals auf Euro und Erhöhung um 35,40 EUR auf 25.600,00 EUR.",518 "context": "PRIMARY",519 "flags": []520 },521 "source": {522 "kind": "COMMERCIAL_REGISTER"523 },524 "details": {525 "schema": "CAPITAL_CHANGE",526 "capital_kind": "SHARE_CAPITAL",527 "resulting_amount": {528 "amount": "25600.00",529 "currency": "EUR",530 "source_text": "25.600,00 EUR"531 },532 "change_amount": {533 "amount": "35.40",534 "currency": "EUR",535 "source_text": "35,40 EUR"536 }537 }538 },539 {540 "event": {541 "id": "f56d0c2941faef90880d9c9a631e7136",542 "topic": "CAPITAL_CHANGES",543 "topic_name": {544 "de": "Kapitaländerungen",545 "en": "Capital changes"546 },547 "occurred_on": "2026-10-28",548 "announced_on": "2026-10-28",549 "date_basis": "REGISTER_ENTRY"550 },551 "organization": {552 "type": "ORGANIZATION",553 "entity_id": "f9f9b34f2e0e95db74ad7256954a7e97",554 "current_profile": {555 "name": "c BEBUG Berliner Buch- und Musikverlagsgesellschaft mbH",556 "registration": {557 "register_type": "HRB",558 "register_number": "94440",559 "court": "Charlottenburg (Berlin)",560 "register_locality": "Berlin",561 "registration_authority_id": "F1103",562 "register_entity_name": "Charlottenburg (Berlin) HRB 94440"563 },564 "legal_form": {565 "name": {566 "de": "Gesellschaft mit beschränkter Haftung"567 },568 "short": {569 "de": "GmbH"570 }571 },572 "seat": {573 "city": "Berlin"574 },575 "status": {576 "code": "ACTIVE"577 }578 }579 },580 "register_entry": {581 "entry_number": "13",582 "entry_date": "2026-10-28",583 "phase": "INCREASED",584 "description_text": "Stammkapital um 100 EUR auf 30.100,00 EUR erhöht.",585 "context": "PRIMARY",586 "flags": []587 },588 "source": {589 "kind": "COMMERCIAL_REGISTER"590 },591 "details": {592 "schema": "CAPITAL_CHANGE",593 "capital_kind": "SHARE_CAPITAL",594 "resulting_amount": {595 "amount": "30100.00",596 "currency": "EUR",597 "source_text": "30.100,00 EUR"598 },599 "change_amount": {600 "amount": "100.00",601 "currency": "EUR",602 "source_text": "100 EUR"603 }604 }605 },606 {607 "event": {608 "id": "989461137203d93faaa8984eb5849772",609 "topic": "CAPITAL_CHANGES",610 "topic_name": {611 "de": "Kapitaländerungen",612 "en": "Capital changes"613 },614 "occurred_on": "2026-10-28",615 "announced_on": "2026-10-28",616 "date_basis": "REGISTER_ENTRY"617 },618 "organization": {619 "type": "ORGANIZATION",620 "entity_id": "585c00043199b60757c37cacfd574e9a",621 "current_profile": {622 "name": "Woltmann GmbH",623 "registration": {624 "register_type": "HRB",625 "register_number": "120446",626 "court": "Hannover",627 "register_locality": "Hanover",628 "registration_authority_id": "P2305",629 "register_entity_name": "Hannover HRB 120446"630 },631 "legal_form": {632 "name": {633 "de": "Gesellschaft mit beschränkter Haftung"634 },635 "short": {636 "de": "GmbH"637 }638 },639 "seat": {640 "city": "Wedemark"641 },642 "status": {643 "code": "ACTIVE"644 }645 }646 },647 "register_entry": {648 "entry_number": "3",649 "entry_date": "2026-10-28",650 "phase": "INCREASED",651 "description_text": "Kapitalerhöhung um EUR 435,41 auf EUR 26.000,00.",652 "context": "PRIMARY",653 "flags": []654 },655 "source": {656 "kind": "COMMERCIAL_REGISTER"657 },658 "details": {659 "schema": "CAPITAL_CHANGE",660 "capital_kind": "SHARE_CAPITAL",661 "resulting_amount": {662 "amount": "26000.00",663 "currency": "EUR",664 "source_text": "26.000,00 EUR"665 },666 "change_amount": {667 "amount": "435.41",668 "currency": "EUR",669 "source_text": "435,41 EUR"670 }671 }672 },673 {674 "event": {675 "id": "6817652ca014277545be153e172d6f69",676 "topic": "CAPITAL_CHANGES",677 "topic_name": {678 "de": "Kapitaländerungen",679 "en": "Capital changes"680 },681 "occurred_on": "2026-10-28",682 "announced_on": "2026-10-28",683 "date_basis": "REGISTER_ENTRY"684 },685 "organization": {686 "type": "ORGANIZATION",687 "entity_id": "585c00043199b60757c37cacfd574e9a",688 "current_profile": {689 "name": "Woltmann GmbH",690 "registration": {691 "register_type": "HRB",692 "register_number": "120446",693 "court": "Hannover",694 "register_locality": "Hanover",695 "registration_authority_id": "P2305",696 "register_entity_name": "Hannover HRB 120446"697 },698 "legal_form": {699 "name": {700 "de": "Gesellschaft mit beschränkter Haftung"701 },702 "short": {703 "de": "GmbH"704 }705 },706 "seat": {707 "city": "Wedemark"708 },709 "status": {710 "code": "ACTIVE"711 }712 }713 },714 "register_entry": {715 "entry_number": "3",716 "entry_date": "2026-10-28",717 "phase": "CHANGED",718 "description_text": "Umstellung des Stammkapitals von DEM 50.000,00 auf Euro (EUR 25.564,59).",719 "context": "PRIMARY",720 "flags": []721 },722 "source": {723 "kind": "COMMERCIAL_REGISTER"724 },725 "details": {726 "schema": "CAPITAL_CHANGE",727 "capital_kind": "SHARE_CAPITAL",728 "resulting_amount": {729 "amount": "25564.59",730 "currency": "EUR",731 "source_text": "25.564,59 EUR"732 }733 }734 },735 {736 "event": {737 "id": "206d0d384b0e69f8997f826f308607f7",738 "topic": "CAPITAL_CHANGES",739 "topic_name": {740 "de": "Kapitaländerungen",741 "en": "Capital changes"742 },743 "occurred_on": "2026-10-28",744 "announced_on": "2026-10-28",745 "date_basis": "REGISTER_ENTRY"746 },747 "organization": {748 "type": "ORGANIZATION",749 "entity_id": "a95014d03e1879452741a9a94477f0f1",750 "current_profile": {751 "name": "Innok Robotics GmbH",752 "registration": {753 "register_type": "HRB",754 "register_number": "18812",755 "court": "Regensburg",756 "register_locality": "Regensburg",757 "registration_authority_id": "D3410",758 "register_entity_name": "Regensburg HRB 18812"759 },760 "legal_form": {761 "name": {762 "de": "Gesellschaft mit beschränkter Haftung"763 },764 "short": {765 "de": "GmbH"766 }767 },768 "seat": {769 "city": "Regenstauf"770 },771 "status": {772 "code": "ACTIVE"773 }774 }775 },776 "register_entry": {777 "entry_number": "6",778 "entry_date": "2026-10-28",779 "phase": "CHANGED",780 "description_text": "Genehmigtes Kapital 2026/I nach teilweiser Ausschöpfung noch 3.320,00 EUR.",781 "context": "PRIMARY",782 "flags": []783 },784 "source": {785 "kind": "COMMERCIAL_REGISTER"786 },787 "details": {788 "schema": "CAPITAL_CHANGE",789 "capital_kind": "OTHER",790 "resulting_amount": {791 "amount": "3320.00",792 "currency": "EUR",793 "source_text": "3.320,00 EUR"794 }795 }796 },797 {798 "event": {799 "id": "7f710844b634d2385448ad42f3c4d4d5",800 "topic": "CAPITAL_CHANGES",801 "topic_name": {802 "de": "Kapitaländerungen",803 "en": "Capital changes"804 },805 "occurred_on": "2026-10-28",806 "announced_on": "2026-10-28",807 "date_basis": "REGISTER_ENTRY"808 },809 "organization": {810 "type": "ORGANIZATION",811 "entity_id": "a95014d03e1879452741a9a94477f0f1",812 "current_profile": {813 "name": "Innok Robotics GmbH",814 "registration": {815 "register_type": "HRB",816 "register_number": "18812",817 "court": "Regensburg",818 "register_locality": "Regensburg",819 "registration_authority_id": "D3410",820 "register_entity_name": "Regensburg HRB 18812"821 },822 "legal_form": {823 "name": {824 "de": "Gesellschaft mit beschränkter Haftung"825 },826 "short": {827 "de": "GmbH"828 }829 },830 "seat": {831 "city": "Regenstauf"832 },833 "status": {834 "code": "ACTIVE"835 }836 }837 },838 "register_entry": {839 "entry_number": "6",840 "entry_date": "2026-10-28",841 "phase": "INCREASED",842 "description_text": "Erhöhung des Stammkapitals um 9.550,00 EUR auf 62.259,00 EUR.",843 "context": "PRIMARY",844 "flags": []845 },846 "source": {847 "kind": "COMMERCIAL_REGISTER"848 },849 "details": {850 "schema": "CAPITAL_CHANGE",851 "capital_kind": "SHARE_CAPITAL",852 "resulting_amount": {853 "amount": "62259.00",854 "currency": "EUR",855 "source_text": "62.259,00 EUR"856 },857 "change_amount": {858 "amount": "9550.00",859 "currency": "EUR",860 "source_text": "9.550,00 EUR"861 }862 }863 },864 {865 "event": {866 "id": "bbdc65b67d242c528ad1bf59ab16e0bc",867 "topic": "CAPITAL_CHANGES",868 "topic_name": {869 "de": "Kapitaländerungen",870 "en": "Capital changes"871 },872 "occurred_on": "2026-10-28",873 "announced_on": "2026-10-28",874 "date_basis": "REGISTER_ENTRY"875 },876 "organization": {877 "type": "ORGANIZATION",878 "entity_id": "4e4a5bca9dcbdeb128e6649b3642388b",879 "current_profile": {880 "name": "Buzzi HoldCo GmbH",881 "registration": {882 "register_type": "HRB",883 "register_number": "173433",884 "court": "Hamburg",885 "register_locality": "Hamburg",886 "registration_authority_id": "K1101",887 "register_entity_name": "Hamburg HRB 173433"888 },889 "legal_form": {890 "name": {891 "de": "Gesellschaft mit beschränkter Haftung"892 },893 "short": {894 "de": "GmbH"895 }896 },897 "seat": {898 "city": "Hamburg"899 },900 "status": {901 "code": "ACTIVE"902 }903 }904 },905 "register_entry": {906 "entry_number": "2",907 "entry_date": "2026-10-28",908 "phase": "INCREASED",909 "description_text": "Erhöhung des Stammkapitals um 1,00 EUR auf 25.001,00 EUR",910 "context": "PRIMARY",911 "flags": []912 },913 "source": {914 "kind": "COMMERCIAL_REGISTER"915 },916 "details": {917 "schema": "CAPITAL_CHANGE",918 "capital_kind": "SHARE_CAPITAL",919 "resulting_amount": {920 "amount": "25001.00",921 "currency": "EUR",922 "source_text": "25.001,00 EUR"923 },924 "change_amount": {925 "amount": "1.00",926 "currency": "EUR",927 "source_text": "1,00 EUR"928 }929 }930 },931 {932 "event": {933 "id": "3595fab3bb5f62b05e1a5ab0efc9131f",934 "topic": "CAPITAL_CHANGES",935 "topic_name": {936 "de": "Kapitaländerungen",937 "en": "Capital changes"938 },939 "occurred_on": "2026-10-28",940 "announced_on": "2026-10-28",941 "date_basis": "REGISTER_ENTRY"942 },943 "organization": {944 "type": "ORGANIZATION",945 "entity_id": "e5371b14ba0875ee3885ad6f4517907c",946 "current_profile": {947 "name": "Kronos MidCo GmbH",948 "registration": {949 "register_type": "HRB",950 "register_number": "199097",951 "court": "Hamburg",952 "register_locality": "Hamburg",953 "registration_authority_id": "K1101",954 "register_entity_name": "Hamburg HRB 199097"955 },956 "legal_form": {957 "short": {958 "de": "GmbH"959 }960 },961 "seat": {962 "city": "Hamburg"963 },964 "status": {965 "code": "ACTIVE"966 }967 }968 },969 "register_entry": {970 "entry_number": "6",971 "entry_date": "2026-10-28",972 "phase": "INCREASED",973 "description_text": "Erhöhung des Stammkapitals um 7.751,00 EUR auf 32.751,00 EUR.",974 "context": "PRIMARY",975 "flags": []976 },977 "source": {978 "kind": "COMMERCIAL_REGISTER"979 },980 "details": {981 "schema": "CAPITAL_CHANGE",982 "capital_kind": "SHARE_CAPITAL",983 "resulting_amount": {984 "amount": "32751.00",985 "currency": "EUR",986 "source_text": "32.751,00 EUR"987 },988 "change_amount": {989 "amount": "7751.00",990 "currency": "EUR",991 "source_text": "7.751,00 EUR"992 }993 }994 },995 {996 "event": {997 "id": "110abb752ed50097b1b426539f1dd056",998 "topic": "CAPITAL_CHANGES",999 "topic_name": {1000 "de": "Kapitaländerungen",1001 "en": "Capital changes"1002 },1003 "occurred_on": "2026-10-28",1004 "announced_on": "2026-10-28",1005 "date_basis": "REGISTER_ENTRY"1006 },1007 "organization": {1008 "type": "ORGANIZATION",1009 "entity_id": "f97e7a325b4f85b8f37dc7024351c93c",1010 "current_profile": {1011 "name": "CPOT GmbH",1012 "registration": {1013 "register_type": "HRB",1014 "register_number": "128833",1015 "court": "Frankfurt am Main",1016 "register_locality": "Frankfurt",1017 "registration_authority_id": "M1201",1018 "register_entity_name": "Frankfurt am Main HRB 128833"1019 },1020 "legal_form": {1021 "name": {1022 "de": "Gesellschaft mit beschränkter Haftung"1023 },1024 "short": {1025 "de": "GmbH"1026 }1027 },1028 "seat": {1029 "city": "Frankfurt am Main"1030 },1031 "status": {1032 "code": "ACTIVE"1033 }1034 }1035 },1036 "register_entry": {1037 "entry_number": "3",1038 "entry_date": "2026-10-28",1039 "phase": "INCREASED",1040 "description_text": "Erhöhung des Stammkapitals um 24.000,00 EUR auf 25.000,00 EUR",1041 "context": "PRIMARY",1042 "flags": []1043 },1044 "source": {1045 "kind": "COMMERCIAL_REGISTER"1046 },1047 "details": {1048 "schema": "CAPITAL_CHANGE",1049 "capital_kind": "SHARE_CAPITAL",1050 "resulting_amount": {1051 "amount": "25000.00",1052 "currency": "EUR",1053 "source_text": "25.000,00 EUR"1054 },1055 "change_amount": {1056 "amount": "24000.00",1057 "currency": "EUR",1058 "source_text": "24.000,00 EUR"1059 }1060 }1061 },1062 {1063 "event": {1064 "id": "4563a35c76e510cdd2a68f98d935fcbb",1065 "topic": "CAPITAL_CHANGES",1066 "topic_name": {1067 "de": "Kapitaländerungen",1068 "en": "Capital changes"1069 },1070 "occurred_on": "2026-10-28",1071 "announced_on": "2026-10-28",1072 "date_basis": "REGISTER_ENTRY"1073 },1074 "organization": {1075 "type": "ORGANIZATION",1076 "entity_id": "3199feaf239ac1b9a5e45f6ea45a3c61",1077 "current_profile": {1078 "name": "Brave2change UG (haftungsbeschränkt)",1079 "registration": {1080 "register_type": "HRB",1081 "register_number": "270781",1082 "court": "München",1083 "register_locality": "Munich",1084 "registration_authority_id": "D2601",1085 "register_entity_name": "München HRB 270781"1086 },1087 "legal_form": {1088 "name": {1089 "de": "Unternehmergesellschaft (haftungsbeschränkt)"1090 },1091 "short": {1092 "de": "UG (haftungsbeschränkt)"1093 }1094 },1095 "seat": {1096 "city": "München"1097 },1098 "status": {1099 "code": "ACTIVE"1100 }1101 }1102 },1103 "register_entry": {1104 "entry_number": "2",1105 "entry_date": "2026-10-28",1106 "phase": "INCREASED",1107 "description_text": "Erhöhung des Stammkapitals um 1.400,- EUR auf 2.400,00 EUR",1108 "context": "PRIMARY",1109 "flags": []1110 },1111 "source": {1112 "kind": "COMMERCIAL_REGISTER"1113 },1114 "details": {1115 "schema": "CAPITAL_CHANGE",1116 "capital_kind": "SHARE_CAPITAL",1117 "resulting_amount": {1118 "amount": "2400.00",1119 "currency": "EUR",1120 "source_text": "2.400,00 EUR"1121 },1122 "change_amount": {1123 "amount": "1400.00",1124 "currency": "EUR",1125 "source_text": "1.400,- EUR"1126 }1127 }1128 },1129 {1130 "event": {1131 "id": "f810560be252c43dc031564fdb8fe653",1132 "topic": "CAPITAL_CHANGES",1133 "topic_name": {1134 "de": "Kapitaländerungen",1135 "en": "Capital changes"1136 },1137 "occurred_on": "2026-10-28",1138 "announced_on": "2026-10-28",1139 "date_basis": "REGISTER_ENTRY"1140 },1141 "organization": {1142 "type": "ORGANIZATION",1143 "entity_id": "d45fcce5200b18bf2f377c6f1a785897",1144 "current_profile": {1145 "name": "Benfele Ritter Ventures UG (haftungsbeschränkt)",1146 "registration": {1147 "register_type": "HRB",1148 "register_number": "307694",1149 "court": "München",1150 "register_locality": "Munich",1151 "registration_authority_id": "D2601",1152 "register_entity_name": "München HRB 307694"1153 },1154 "legal_form": {1155 "name": {1156 "de": "Unternehmergesellschaft (haftungsbeschränkt)"1157 },1158 "short": {1159 "de": "UG (haftungsbeschränkt)"1160 }1161 },1162 "seat": {1163 "city": "Unterföhring"1164 },1165 "status": {1166 "code": "ACTIVE"1167 }1168 }1169 },1170 "register_entry": {1171 "entry_number": "2",1172 "entry_date": "2026-10-28",1173 "phase": "INCREASED",1174 "description_text": "Erhöhung des Stammkapitals um 100,00 EUR auf 1.100,00 EUR",1175 "context": "PRIMARY",1176 "flags": []1177 },1178 "source": {1179 "kind": "COMMERCIAL_REGISTER"1180 },1181 "details": {1182 "schema": "CAPITAL_CHANGE",1183 "capital_kind": "SHARE_CAPITAL",1184 "resulting_amount": {1185 "amount": "1100.00",1186 "currency": "EUR",1187 "source_text": "1.100,00 EUR"1188 },1189 "change_amount": {1190 "amount": "100.00",1191 "currency": "EUR",1192 "source_text": "100,00 EUR"1193 }1194 }1195 },1196 {1197 "event": {1198 "id": "6d08eadf8c4fc9495d33af7c12d28f75",1199 "topic": "CAPITAL_CHANGES",1200 "topic_name": {1201 "de": "Kapitaländerungen",1202 "en": "Capital changes"1203 },1204 "occurred_on": "2026-10-27",1205 "announced_on": "2026-10-27",1206 "date_basis": "REGISTER_ENTRY"1207 },1208 "organization": {1209 "type": "ORGANIZATION",1210 "entity_id": "35dd2dbced656dd36cd55871f0b33a5e",1211 "current_profile": {1212 "name": "TÜNKERS-NICKEL Systeme GmbH",1213 "registration": {1214 "register_type": "HRB",1215 "register_number": "13742",1216 "court": "Siegburg",1217 "register_locality": "Siegburg",1218 "registration_authority_id": "R3208",1219 "register_entity_name": "Siegburg HRB 13742"1220 },1221 "legal_form": {1222 "name": {1223 "de": "Gesellschaft mit beschränkter Haftung"1224 },1225 "short": {1226 "de": "GmbH"1227 }1228 },1229 "seat": {1230 "city": "Troisdorf-Spich"1231 },1232 "status": {1233 "code": "ACTIVE"1234 }1235 }1236 },1237 "register_entry": {1238 "entry_number": "5",1239 "entry_date": "2026-10-27",1240 "phase": "INCREASED",1241 "description_text": "Erhöhung des Stammkapitals von 100.000,00 EUR um 112.500,00 EUR auf 212.500,00 EUR",1242 "context": "PRIMARY",1243 "flags": []1244 },1245 "source": {1246 "kind": "COMMERCIAL_REGISTER"1247 },1248 "details": {1249 "schema": "CAPITAL_CHANGE",1250 "capital_kind": "SHARE_CAPITAL",1251 "resulting_amount": {1252 "amount": "212500.00",1253 "currency": "EUR",1254 "source_text": "212.500,00 EUR"1255 },1256 "change_amount": {1257 "amount": "112500.00",1258 "currency": "EUR",1259 "source_text": "112.500,00 EUR"1260 }1261 }1262 },1263 {1264 "event": {1265 "id": "4851a8e6a7864e9efa3b7885b541897b",1266 "topic": "CAPITAL_CHANGES",1267 "topic_name": {1268 "de": "Kapitaländerungen",1269 "en": "Capital changes"1270 },1271 "occurred_on": "2026-10-27",1272 "announced_on": "2026-10-27",1273 "date_basis": "REGISTER_ENTRY"1274 },1275 "organization": {1276 "type": "ORGANIZATION",1277 "entity_id": "559c21619a8dfe0fbe549aec884afdad",1278 "current_profile": {1279 "name": "Wildkost und Feinfleisch JFG GmbH",1280 "registration": {1281 "register_type": "HRB",1282 "register_number": "262241",1283 "court": "Charlottenburg (Berlin)",1284 "register_locality": "Berlin",1285 "registration_authority_id": "F1103",1286 "register_entity_name": "Charlottenburg (Berlin) HRB 262241"1287 },1288 "legal_form": {1289 "name": {1290 "de": "Gesellschaft mit beschränkter Haftung"1291 },1292 "short": {1293 "de": "GmbH"1294 }1295 },1296 "seat": {1297 "city": "Berlin"1298 },1299 "status": {1300 "code": "ACTIVE"1301 }1302 }1303 },1304 "register_entry": {1305 "entry_number": "2",1306 "entry_date": "2026-10-27",1307 "phase": "INCREASED",1308 "description_text": "Stammkapital um 24.500,00 EUR auf 25.000,00 EUR erhöht.",1309 "context": "PRIMARY",1310 "flags": []1311 },1312 "source": {1313 "kind": "COMMERCIAL_REGISTER"1314 },1315 "details": {1316 "schema": "CAPITAL_CHANGE",1317 "capital_kind": "SHARE_CAPITAL",1318 "resulting_amount": {1319 "amount": "25000.00",1320 "currency": "EUR",1321 "source_text": "25.000,00 EUR"1322 },1323 "change_amount": {1324 "amount": "24500.00",1325 "currency": "EUR",1326 "source_text": "24.500,00 EUR"1327 }1328 }1329 }1330 ],1331 "pagination": {1332 "mode": "CURSOR",1333 "limit": 20,1334 "returned": 20,1335 "has_more": true,1336 "next_cursor": "sgc1.eyJiIjoiYjdlYTk2ODM1YjQxIiwiZyI6eyJnOGM2YzZkMDYiOnsiYyI6ImV5Sm1Jam9pTlROaU5EQmxPRFppT0RnelpqSXdZeUlzSW1sa0lqb2lObUZsTlRReU1UQXdPR001TVdKbU1XVXlNREF5TXpVMklpd2lhV1IwSWpvaWIySnFaV04wYVdRaUxDSnlJam9pTWpBeU5pMHdOeTB5T1M0eUlpd2ljeUk2SWpFdU1TSXNJbk5qSWpvaU5HWmxabVk0TVRSaU5tWTBNekF4WVNJc0luTmtJam9pTWpBeU5pMHhNQzB5TjFRd01Eb3dNRG93TUNJc0luTnZJam9pWVc1dWIzVnVZMlZ0Wlc1MFgyUmhkR1VpTENKMElqb3hOemt6TlRJeE9URXpmUS52WHRYZTljSjQ1THp4U25VRnR3cEtBIiwibiI6MCwibCI6bnVsbCwieCI6ZmFsc2V9fX0"1337 },1338 "filters": {1339 "topics": [1340 "CAPITAL_CHANGES"1341 ],1342 "organization_ids": [],1343 "from": "2026-10-26",1344 "to": "2026-10-30"1345 },1346 "warnings": [],1347 "meta": {1348 "generated_at": "2026-11-01T08:31:53+00:00",1349 "profiles_resolved_at": "2026-11-01T08:31:53+00:00",1350 "schema_version": "1.0",1351 "request_id": "req_01m6b3s49jw8hfrc1atz8rk0f2",1352 "request_credit_cost": 20,1353 "credits_remaining": 1451354 }1355}
Una página contiene hasta 20 Signals, las más recientes primero, y cuesta 20 créditos. Si hay más, pagination.next_cursor contiene un puntero a la página siguiente. Pásalo de vuelta como cursor con los mismos filtros.
from y to se refieren a la fecha del anuncio (announced_on). El propio evento (occurred_on) puede ser anterior, por ejemplo el acuerdo de una fusión.
Para empresas concretas, pasa hasta 5 entity_ids en organization_ids. Para una sincronización diaria, pide los últimos días y sigue paginando hasta que has_more sea false.
event.id.
Vigilar empresas concretas con Monitoring
Un monitor comprueba una empresa en busca de nuevas Signals cada 1 a 30 días. Enviamos cada señal nueva como webhook firmado a tu endpoint de webhook. Así lo configuras:
- Crea un endpoint de webhook: en la aplicación web, en Monitoring, o a través de la API con
POST /v1/account/webhook-endpointsy los camposnameyurl(solo HTTPS). Esta solicitud necesita el admin token de Cuenta › Claves API en el headerAuthorization: Bearer …. La clave API no basta para esto. La respuesta contiene eliddel endpoint (wep_…) y el secreto de firma, que solo mostramos una vez. - Verifica el endpoint con
POST /v1/account/webhook-endpoints/{id}/verify. Enviamos entonces un mensaje de tipoendpoint.verification. Tu endpoint responde en 15 segundos con 2xx y devuelvedata.challengeen el headerwebhook-verification. Solo entonces recibe entregas. - Crea el monitor, con
entity_id,poll_interval_daysy eliddel paso 1 enendpoint_ids.
curl -X POST "https://handelsregister.ai/api/v1/account/monitors" \ -H "x-api-key: TU_CLAVE_API" \ -H "Idempotency-Key: monitor-hetzner-1" \ -H "Content-Type: application/json" \ -d '{ "entity_id": "94eb910fef13f94585c48c263fa446d4", "label": "Hetzner Online GmbH", "poll_interval_days": 7, "endpoint_ids": ["wep_TU_ENDPOINT_ID"] }'
Las solicitudes de escritura a monitores necesitan un Idempotency-Key. Si repites una con la misma clave, no se crea un segundo monitor.
Crear un monitor es gratis. Primero el monitor marca como conocidas las Signals de los últimos días, sin enviarlas. Después cobra el precio del primer ciclo de 30 días y hace su primera comprobación al momento.
| Qué | Créditos |
|---|---|
| Monitor comprobado cada día, durante 30 días | 50 |
| Monitor comprobado cada 3 días, durante 30 días | 40 |
| Monitor comprobado cada 7 días, durante 30 días | 20 |
| Monitor comprobado cada 30 días, durante 30 días | 10 |
| Cada comprobación correcta adicional en el periodo | +2 |
Límite: 30 solicitudes por minuto. Crear, modificar y eliminar: 10 por minuto.
Puedes preguntar de antemano, gratis, lo que cuesta un calendario:
curl -G "https://handelsregister.ai/api/v1/account/monitoring/pricing" \ -H "x-api-key: TU_CLAVE_API" \ --data-urlencode 'poll_interval_days=7'
import requests response = requests.get( "https://handelsregister.ai/api/v1/account/monitoring/pricing", headers={"x-api-key": "TU_CLAVE_API"}, params={ "poll_interval_days": "7", }, ) data = response.json()
const url = new URL("https://handelsregister.ai/api/v1/account/monitoring/pricing"); url.searchParams.append("poll_interval_days", "7"); const response = await fetch(url, { headers: { "x-api-key": "TU_CLAVE_API" }, }); const data = await response.json();
1{2 "pricing": {3 "policy_version": "2026-08.v2",4 "credits_per_run": 2,5 "cycle_minimum_credits": 20,6 "included_runs": 5,7 "cycle_days": 30,8 "estimated_runs": 5,9 "estimated_credits": 2010 },11 "entitled": true,12 "meta": {13 "request_credit_cost": 0,14 "credits_remaining": 14515 }16}
Pausar, reanudar, cambiar el calendario y eliminar se describen en account/monitors.
Recibir y verificar webhooks
Cada entrega es un POST con JSON. Al verificar, enviamos un mensaje con el type endpoint.verification. Responde con 2xx y pon en el header webhook-verification el valor de data.challenge. Para una señal nueva, type es organization.signal.detected, y data.signal tiene el mismo formato que una entrada de signals.
Cada entrega contiene tres headers:
| Campo | Significado |
|---|---|
| webhook-id | Identificador del mensaje, el mismo en los reintentos. Úsalo para detectar duplicados. |
| webhook-timestamp | Momento de este intento de entrega en segundos Unix. |
| webhook-signature |
Una o varias firmas de la forma v1,…, separadas por espacios. |
La firma sigue el estándar abierto “Standard Webhooks”: HMAC-SHA256 sobre webhook-id.webhook-timestamp.body. La clave es la parte del secreto tras whsec_, decodificada en Base64. Verifica la firma con el body sin modificar antes de procesarlo.
import base64 import hashlib import hmac import time def verify_webhook(secret: str, headers: dict, body: bytes) -> bool: """Comprueba la firma de una entrega de handelsregister.ai.""" msg_id = headers["webhook-id"] timestamp = headers["webhook-timestamp"] if abs(time.time() - int(timestamp)) > 5 * 60: return False # más de cinco minutos de antigüedad o en el futuro key = base64.b64decode(secret.removeprefix("whsec_")) signed = f"{msg_id}.{timestamp}.".encode() + body expected = base64.b64encode(hmac.new(key, signed, hashlib.sha256).digest()).decode() for candidate in headers["webhook-signature"].split(" "): version, _, signature = candidate.partition(",") if version == "v1" and hmac.compare_digest(signature, expected): return True return False
import crypto from "node:crypto"; // body: el cuerpo de la solicitud sin modificar, como texto export function verifyWebhook(secret, headers, body) { const id = headers["webhook-id"]; const timestamp = headers["webhook-timestamp"]; if (Math.abs(Date.now() / 1000 - Number(timestamp)) > 5 * 60) { return false; // más de cinco minutos de antigüedad o en el futuro } const key = Buffer.from(secret.replace(/^whsec_/, ""), "base64"); const expected = crypto .createHmac("sha256", key) .update(`${id}.${timestamp}.${body}`) .digest("base64"); return headers["webhook-signature"].split(" ").some((candidate) => { const [version, signature] = candidate.split(","); return ( version === "v1" && signature.length === expected.length && crypto.timingSafeEqual(Buffer.from(signature), Buffer.from(expected)) ); }); }
Responde en 15 segundos con 2xx y procesa después. Sin 2xx, reintentamos la entrega a intervalos crecientes durante unos tres días. Tras una rotación del secreto, los mensajes llevan ambas firmas durante siete días.
Las entregas, los reintentos y todos los campos se describen en account/webhook-endpoints.
Watchlist y feeds
La watchlist es el camino sin servidor propio. En la aplicación web, en Monitoring, sigues una empresa con un clic. Sin monitor puedes seguir hasta 15 empresas. Las empresas con monitor están automáticamente en la watchlist.
La watchlist muestra las Signals de tus empresas de los últimos doce meses, las más recientes primero. Con “Generar URL del feed” las obtienes como feed RSS o Atom para cualquier lector de feeds.
El feed se actualiza como máximo una vez por hora, por mucho que tu lector lo consulte. Cada actualización cuesta 20 créditos. Si tu saldo no alcanza, el feed muestra el último estado y vuelve a actualizarse en cuanto tengas créditos.
La URL contiene una clave secreta y solo se muestra una vez. Si la renuevas, la antigua deja de funcionar al instante. Con ?lang=en, el feed llega en inglés.
Los mismos datos los obtienes a través de la API con Signals y organization_ids.