<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>InfraNode Changelog</title>
    <link>https://infranode.dev/changelog/</link>
    <description>Neue Datenquellen, neue Städte, Verhaltensänderungen und Abkündigungen der InfraNode-API.</description>
    <language>de</language>
    <lastBuildDate>Tue, 11 Aug 2026 00:00:00 GMT</lastBuildDate>
    <atom:link href="https://infranode.dev/changelog/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>[Entfernt] Intensivbetten-Daten entfernt (DIVI-Intensivregister)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-08-11-intensivbetten-daten-entfernt-divi-intensivregister</guid>
      <pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate>
      <description>Der Endpunkt /cities/{slug}/icu-live entfällt ersatzlos, ebenso das Feld icu_capacity und das Meta-Feld icu_latest unter /cities/{slug}/health. Grund ist die Zweckbindung der Daten: Das Robert Koch-Institut hat der Weiterverbreitung und der Live-Durchleitung der Daten des DIVI-Intensivregisters widersprochen. Sie werden nach Paragraf 13 Absatz 7 Infektionsschutzgesetz ausschließlich zur Feststellung der Auslastung von Krankenhauskapazitäten erhoben; eine Weitergabe an Dritte ist davon nicht gedeckt. Das RKI prüft zudem, die Daten künftig gar nicht mehr bereitzustellen. Der Endpunkt lieferte zuletzt ohnehin keine Daten mehr aus (source_status disabled). Alle übrigen Krankenhaus-Kennzahlen unter /health bleiben unverändert.</description>
    </item>
    <item>
      <title>[Geändert] Einheitlich englische Quellnamen (meta.source)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-08-01-einheitlich-englische-quellnamen-meta-source</guid>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
      <description>30 Quellnamen in meta.source, city_source und der Quellenliste tragen jetzt einheitlich englische Namen. Die wichtigsten Umbenennungen: hamburg_baustellen, muenchen_baustellen, dortmund_baustellen, rostock_baustellen und bremen_baustellen heißen jetzt *_roadworks; koeln_baustellen_live heißt koeln_roadworks_live, koeln_ereignisse_live heißt koeln_incidents_live, koeln_verkehr heißt koeln_road_events; berlin_verkehrsmeldungen und hannover_verkehrsmeldungen heißen *_traffic_reports; hamburg_verkehrslage heißt hamburg_traffic_situation; kiel_zaehlstellen heißt kiel_counting_stations; die acht *_radzaehl-Quellen (muenchen, leipzig, hamburg, berlin, stuttgart, koeln, essen, duesseldorf) heißen *_bike_counts; denkmal heißt heritage, baumkataster heißt tree_cadastre, koeln_wartezeiten heißt koeln_wait_times, hochwasser heißt lhp, feiertage heißt holidays; die München-Familie muenchen_parkhaeuser/parkraum/park_ride/mobilitaetspunkte/radparken heißt jetzt muenchen_parking, muenchen_parking_onstreet, muenchen_park_and_ride, muenchen_mobility_points und muenchen_bike_parking. Da meta.source ein Einzelwert ist, ist kein Duplikat-Zeitraum mit beiden Namen möglich; der Wechsel ist hart. Bestandsdaten und historische Daten mit alten Namen werden beim Lesen automatisch auf die neuen Namen normalisiert. Alte INFRANODE_*-Umgebungsvariablennamen bleiben als Alias gültig.</description>
    </item>
    <item>
      <title>[Abkündigung] Einheitlich englische Feldnamen in elf Datenarten</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-08-01-einheitlich-englische-feldnamen-in-elf-datenarten</guid>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
      <description>Elf Datenarten tragen ihre Payload-Felder jetzt zusätzlich unter kanonischen englischen Namen: flood (stand heißt as_of), fire-danger (bundesland heißt federal_state), election (granularity heißt coverage_granularity, Werte city/partial statt stadt/teilweise), icu-live (kreis_id/kreis_name/datum heißen district_id/district_name/report_date; gilt ebenso für das icu_capacity-Payload unter health), land-values (stichtag heißt reference_date), tax-rates (gewerbesteuer_hebesatz/grundsteuer_a/b/c/stichtag heißen trade_tax_rate/property_tax_a/b/c/reference_date), business-registrations (anmeldungen/abmeldungen/saldo/jahr heißen registrations/deregistrations/balance/year) und insolvencies (unternehmensinsolvenzen/uebrige_schuldner_insolvenzen/jahr heißen corporate_insolvencies/other_debtor_insolvencies/year). Dazu kommen die Einzel-Einträge in Listen: road-events je Stadtquelle (München, Rostock, Dortmund, Dresden/Leipzig, Hamburg; z.B. beschreibung heißt description, von/bis heißen start/end), die Klinik-Liste in icu-live (bezeichnung/ort/letzte_meldung heißen name/place/last_report), tree-cadastre (z.B. art_dtsch heißt species, pflanzjahr heißt planting_year; die gedeckelte Stichprobe je Antwort liegt während der Übergangszeit bei 225 statt 350 Bäumen) und heritage (z.B. typ heißt type, bezeichnung heißt name). Die alten deutschen Felder bleiben bis zum 31. August 2026 mit identischen Werten erhalten und werden danach entfernt. Clients sollten auf die neuen Feldnamen migrieren.</description>
    </item>
    <item>
      <title>[Geändert] Einheitlich englische Endpunkt-Namen für Live-Routen</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-08-01-einheitlich-englische-endpunkt-namen-fuer-live-routen</guid>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
      <description>Sieben Live-Routen tragen jetzt englische kanonische Pfade: /live/{city}/baustellen heißt /live/{city}/roadworks, /live/{city}/ereignisse heißt /live/{city}/incidents, /live/berlin/verkehrsmeldungen und /live/hannover/verkehrsmeldungen heißen jeweils .../traffic-reports, /live/koeln/umweltzone heißt /live/koeln/low-emission-zone, /live/kiel/zaehlstellen heißt /live/kiel/counting-stations und /live/hamburg/verkehrslage heißt /live/hamburg/traffic-situation. Die alten deutschen Pfade bleiben als deprecated Aliases mit unverändertem Envelope erhalten und tragen einen Deprecation- sowie einen Link-Header auf den jeweiligen Nachfolger. Clients sollten auf die neuen Pfade migrieren.</description>
    </item>
    <item>
      <title>[Behoben] Hamburg: Live-Verkehrslage wieder verfügbar</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-08-01-hamburg-live-verkehrslage-wieder-verfuegbar</guid>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
      <description>Die Echtzeit-Verkehrslage für Hamburg (api.hamburg.de, OGC API Features) war seit Mitte Juli vorübergehend deaktiviert, nachdem Abrufe wiederholt in Zeitüberschreitungen liefen; der Endpunkt meldete in dieser Zeit source_status disabled. Nach Rückmeldung des Landesbetriebs Geoinformation und Vermessung Hamburg (keine IP-Sperre, Upstream antwortet wieder zuverlässig) ist die Quelle seit dem 1. August wieder aktiv und liefert wie zuvor die Netz-Zusammenfassung sowie die nicht-fließenden Straßenabschnitte.</description>
    </item>
    <item>
      <title>[Neu] Ratsinformationen: Freiburg im Breisgau als achte Stadt</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-08-01-ratsinformationen-freiburg-im-breisgau-als-achte-stadt</guid>
      <pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate>
      <description>Die Datenart council-papers deckt jetzt acht lizenzgeklärte Städte ab: Dresden, Köln, Düsseldorf, Münster, Leipzig, Magdeburg, Osnabrück und neu Freiburg im Breisgau. Das Ratsbüro der Stadt Freiburg hat die Lizenz der OParl-Schnittstelle auf Nachfrage schriftlich bestätigt (Datenlizenz Deutschland Namensnennung 2.0), im Bestand liegen rund 13.900 Vorlagen, Anträge und Beschlüsse ab 2014. Außerdem nennt die Antwort jetzt data.total, den Gesamtbestand zu den aktiven Filtern; bisher war nur die Seitenlänge (count) enthalten, den Bestand konnte ein Client nicht ermitteln, ohne bis zur leeren Seite zu blättern.</description>
    </item>
    <item>
      <title>[Neu] Radparken München: 47.518 Stellplätze abrufbar</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-30-radparken-muenchen-47-518-stellplaetze-abrufbar</guid>
      <pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate>
      <description>Neu ist /cities/{slug}/bike-parking mit dem Radparkraum einer Stadt. Für München sind das 3.233 Abstellanlagen mit 47.518 Stellplätzen, je Anlage mit Bauform (Anlehnbügel, Rahmenhalter, Doppelstockanlage), Überdachung, Beleuchtung und Bike-and-Ride-Kennzeichnung. 1.972 Anlagen mit 33.060 Plätzen liegen an ÖPNV-Haltestellen, 316 sind überdacht, 86 sind Doppelstockanlagen. Lastenradanlagen stehen getrennt (103 Anlagen, 281 Plätze), weil sie für andere Fahrzeuge ausgelegt sind. Dazu die zwanzig größten Standorte, die größte ist die Riesstraße 69 mit 392 Plätzen. Gezählt wird ausdrücklich nur der Bestand: die Quelle führt im selben Datensatz auch 156 geplante, 306 abgebaute und 25 außer Betrieb genommene Anlagen. Deren Plätze mitzuzählen würde den heutigen Radparkraum um rund 17 Prozent zu hoch ausweisen, deshalb stehen sie als eigene Zahlen daneben. Quelle ist das Mobilitätsreferat der Landeshauptstadt München (DL-DE/BY 2.0), Anlass war ein Hinweis aus dem IT-Referat der Stadt.</description>
    </item>
    <item>
      <title>[Neu] Themenseite zu den Nachhaltigkeits- und SDG-Indikatoren</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-29-themenseite-zu-den-nachhaltigkeits-und-sdg-indikatoren</guid>
      <pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate>
      <description>Die Datenart sustainability hat jetzt eine eigene Seite unter /daten/nachhaltigkeit-api. Sie erklärt, was in den bis zu 53 kommunalen Nachhaltigkeitsindikatoren steckt, dass die Reihe von 2006 bis 2023 läuft und wie der Jahresfilter ?from= und ?to= die Antwort verkleinert. Offen benannt ist auch der Unterschied im Umfang: kreisfreie Städte erreichen bis zu 53 Indikatoren, kreisangehörige weniger, weil ein Teil der Kennzahlen erst ab Kreisebene erhoben wird. Reine Dokumentation, an der API ändert sich nichts.</description>
    </item>
    <item>
      <title>[Neu] Neun weitere Zeitreihen-Datenarten aus dem Wegweiser Kommune</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-28-neun-weitere-zeitreihen-datenarten-aus-dem-wegweiser-kommune</guid>
      <pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate>
      <description>Der Wegweiser-Bestand ist jetzt vollstaendig erschlossen. Bisher war nur ein Achtel davon abrufbar (sustainability), der Rest lag ungenutzt im Datensatz. Neu sind neun Datenarten, alle mit voller Zeitreihe: population-structure (Altersaufbau, 110 Kennzahlen, mit Prognose bis 2040), population-trend (Bevoelkerungsentwicklung, 70), municipal-finance (kommunale Finanzen, 30), labour-market (Arbeitsmarkt und Pendler, 40), integration (26), childcare (Kinderbetreuung, 20), education-stats (Bildungsstatistik, 33), social-situation (soziale Lage, 17) und care (Pflege, 11). Damit sind 391 Kennzahlen je Stadt abrufbar statt 53. Neu ist auch ein Jahresfilter: alle Wegweiser-Datenarten nehmen ?from= und ?to= und liefern dann nur das gewuenschte Fenster. Das ist bei den grossen Datenarten praktisch noetig, population-structure wiegt ungefiltert rund 90 KB. Ohne Filter bleibt alles wie bisher. Drei Datenarten sind teilabgedeckt, weil die Quelle sie nicht fuer jede Stadt gemeindescharf fuehrt: childcare 83 Staedte, care 73, education-stats 70 (dort fehlen die kreisangehoerigen Staedte). Bestehende Datenarten bleiben unberuehrt: tax-rates, unemployment und indicators fuehren weiter ihre eigenen, teils aktuelleren Werte.</description>
    </item>
    <item>
      <title>[Neu] Sechs Themenseiten zu Statistik-Datenarten</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-27-sechs-themenseiten-zu-statistik-datenarten</guid>
      <pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate>
      <description>Nach den Live-Datenarten sind jetzt die statistischen dran: neue Seiten zu Hebesätzen, Einwohnerzahlen und Dichte, Kriminalstatistik, Unfallatlas, Arbeitsmarkt sowie Gewerbe- und Insolvenzdaten, jeweils auf Deutsch und Englisch. Jede Seite nennt die echten Antwortfelder, die Quelle mit ihrer Lizenz und die räumliche Auflösung. Letzteres ist hier wichtiger als bei Live-Daten: Kriminalstatistik, Unfallatlas, Arbeitsmarkt und Gewerbedaten liegen je Kreis vor, für Städte ohne eigenen Kreis gilt also der Kreiswert. Die Hebesätze sind dagegen gemeindegenau. Beides steht jetzt auf den Seiten, statt dass man es sich aus der Antwort erschließen muss.</description>
    </item>
    <item>
      <title>[Neu] Sechs neue Themenseiten und sieben neue MCP-Seiten</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-27-sechs-neue-themenseiten-und-sieben-neue-mcp-seiten</guid>
      <pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate>
      <description>Bisher hatten nur neun der 67 Datenarten eine eigene Seite, die erklärt, was drinsteckt, woher es kommt und unter welcher Lizenz es steht. Neu dazu kommen Ladesäulen, Spritpreise, Parken, Baustellen, Pegelstände und Unwetterwarnungen, jeweils auf Deutsch und Englisch mit Feldliste, Abdeckung, Quelle, Lizenz und häufigen Fragen. Parallel gibt es sieben neue Seiten zu den passenden MCP-Werkzeugen für KI-Assistenten, darunter Ladesäulen, Parken, Unwetterwarnungen, Solar, Solarkataster, Vergabe und Ratsinformationen. Die Themenseiten verlinken jetzt außerdem direkt die größten Städte, in denen die jeweilige Datenart wirklich vorliegt.</description>
    </item>
    <item>
      <title>[Neu] Neue Datenart sustainability: SDG-Indikatoren als Zeitreihe</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-27-neue-datenart-sustainability-sdg-indikatoren-als-zeitreihe</guid>
      <pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate>
      <description>Neu ist /cities/{slug}/sustainability mit kommunalen Nachhaltigkeits- und SDG-Indikatoren aus dem Wegweiser Kommune der Bertelsmann Stiftung: Flächeninanspruchnahme, Naherholungsflächen, erneuerbare Energie im Wohnungsneubau, Breitbandversorgung, Beschäftigung, Bildung, soziale Teilhabe und weitere. Die Daten stehen unter CC0 und sind für alle 84 Städte da. Das Besondere: jeder Indikator trägt seine ganze ZEITREIHE, in der Regel von 2006 bis 2023, dazu latest_year und latest_value für den jüngsten Punkt. Damit lässt sich erstmals eine Entwicklung abfragen statt nur ein Momentwert. Jahre ohne Wert fehlen in der Reihe, es wird nie eine Null erfunden. 53 der Indikatoren liegen bei der Quelle erst ab Kreisebene vor und fehlen deshalb bei den 14 kreisangehörigen Städten wie Hannover, Aachen oder Göttingen. Bestehende Datenarten bleiben unberührt: indicators (INKAR/BBSR), tax-rates und unemployment führen weiterhin ihre eigenen, teils aktuelleren Werte, die Bestände werden bewusst nicht vermischt.</description>
    </item>
    <item>
      <title>[Behoben] Baustellen und Verkehrsmeldungen: Notreserve statt 503</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-27-baustellen-und-verkehrsmeldungen-notreserve-statt-503</guid>
      <pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate>
      <description>Fällt eine Quelle für Baustellen, Verkehrsmeldungen oder Sperrungen kurz aus, wird jetzt bis zu sechs Stunden lang der zuletzt bekannte Stand ausgeliefert, statt mit 503 abzubrechen. Solche Antworten sind im meta-Block an cache_status stale_on_error erkennbar. Bisher hatten nur einzelne Quellen dieses Fenster, gleichartige Quellen anderer Städte dagegen nur zwei Minuten, was am 26. Juli bei den Hamburger Baustellen zu kurzzeitigen 503 führte. Betroffen sind Hamburg, Dortmund, München, Rostock, Berlin, Köln, Sachsen und Baden-Württemberg. Die Verkehrslage bekommt als Flusswert 30 Minuten, weil ein alter Verkehrsfluss wenig aussagt. Die Frische ändert sich nirgends, alle Quellen bleiben minutenfrisch. Bewusst ausgenommen bleiben Abfahrtszeiten, Leihfahrzeuge und Wartezeiten: dort wäre ein veralteter Wert irreführend, deshalb bleibt es dort bei einer ehrlichen Fehlermeldung.</description>
    </item>
    <item>
      <title>[Geändert] Bessere Wegweiser: 404-Hinweis und Beispielwerte</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-26-bessere-wegweiser-404-hinweis-und-beispielwerte</guid>
      <pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate>
      <description>Wer den /cities-Präfix vergisst und etwa /api/v1/recklinghausen aufruft, bekommt im 404-Hinweis jetzt den korrekten Pfad genannt, solange das Segment wirklich eine bekannte Stadt ist. Vorher schlug die Ähnlichkeitssuche stattdessen eine Datenart mit ähnlichem Namen vor und führte damit in die Irre. Exonyme und Kurzformen lösen dabei auf den kanonischen Slug auf, munich verweist also auf /api/v1/cities/muenchen. Unabhängig davon trägt jetzt jeder Pflichtparameter der API einen funktionierenden Beispielwert. Die Codebeispiele auf den Endpunktseiten setzten dort bisher das Wort example ein, was kopiert und abgeschickt einen Fehler ergab, etwa bei stop_id der Live-Abfahrten oder type der POIs. Die Parametertabelle zeigt den Beispielwert zusätzlich in einer eigenen Spalte. Bei den flüchtigen GTFS-RT-Kennungen trip_id und route_id steht dabei, woher frische IDs kommen und dass eine abgelaufene ID kein Fehler ist, sondern no_data.</description>
    </item>
    <item>
      <title>[Geändert] MCP: transit_departures weist Trip-Halt-IDs freundlich ab</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-26-mcp-transit-departures-weist-trip-halt-ids-freundlich-ab</guid>
      <pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate>
      <description>Wer dem MCP-Werkzeug transit_departures statt einer Haltestellen-ID eine trip_stop_id aus einer Bahnhofstafel übergibt, bekommt jetzt eine Antwort mit source_status no_data und einem Hinweis, woher gültige Haltestellen-IDs kommen, statt eines 400 vom Live-Endpunkt. Das Werkzeug erkennt das Muster der Trip-Halt-ID selbst und stellt gar keine Anfrage mehr. Gültige DELFI-IDs im Format de:AGS:id und rein numerische gtfs.de-IDs sind davon nicht betroffen. Am Live-Endpunkt selbst ändert sich nichts: dort bleibt eine ungültige stop_id ein 400.</description>
    </item>
    <item>
      <title>[Neu] Abfahrtstafel: stop_id heißt jetzt trip_stop_id</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-25-abfahrtstafel-stop-id-heisst-jetzt-trip-stop-id</guid>
      <pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate>
      <description>In den Abfahrts- und Ankunftstafeln der Bahnhöfe hieß das Feld bisher stop_id, obwohl es einen einzelnen Halt einer konkreten Zugfahrt bezeichnet und keine Haltestelle. Der Name kollidierte mit der Haltestellen-ID der Live-Abfahrten unter /live/{slug}/transit/departures, die eine DELFI-ID im Format de:AGS:id erwartet. Wer den Wert von einem Endpunkt zum anderen weiterreichte, bekam verlässlich einen 400. Das Feld heißt deshalb jetzt trip_stop_id; stop_id trägt denselben Wert weiter und ist abgekündigt. Die Fehlermeldung des Live-Endpunkts benennt die Verwechslung jetzt ausdrücklich und sagt, wo gültige Haltestellen-IDs herkommen.</description>
    </item>
    <item>
      <title>[Neu] Einheitliche Feldnamen über alle Datenarten</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-25-einheitliche-feldnamen-ueber-alle-datenarten</guid>
      <pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate>
      <description>Gleiche Konzepte heißen jetzt überall gleich, in snake_case und englisch: post_code, street, house_number, place, name, start, end, distance_km, power_kw, lat und lon. Betroffen sind unter anderem Ladesäulen (bisher plz und ort), Energie-Anlagen (plz, leistung_kw, einheit_typ), Bahnhöfe (zip), Krankenhäuser (zip, city), Köln-Veranstaltungen (strasse, hausnummer, plz) und innerstädtische Baustellen (bezeichnung, beginn, ende, art). Die Verkehrsmeldungen der Autobahn-API tragen zusätzlich is_blocked als echtes Boolean, start_timestamp, delay_minutes, average_speed_kmh, abnormal_traffic_type, name, description_text sowie bbox mit lat und lon aus dem bisherigen Komma-String extent. Innerstädtische Baustellen in Köln bekommen mit event_type_label den Klartext zum bisherigen Zahlencode, direkt aus der Werteliste des Dienstes. Der Bahnhofs-Katalog nennt die DB-Bahnhofskategorie jetzt station_category, weil category in anderen Datenarten ein Textlabel trägt und nicht eine Zahl. Alle Änderungen sind additiv, die bisherigen Felder bleiben vorerst mit identischem Wert erhalten.</description>
    </item>
    <item>
      <title>[Abkündigung] Abkündigung: alte Feldnamen und camelCase-Rohfelder</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-25-abkuendigung-alte-feldnamen-und-camelcase-rohfelder</guid>
      <pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate>
      <description>Die bisherigen Namen plz, zip, strasse, hausnummer, ort, city, bezeichnung, beginn, ende, art, dist_km, leistung_kw, einheit_typ und das stop_id der Bahnhofs-Tafeln (jetzt trip_stop_id), das category im Bahnhofs-Katalog (jetzt station_category) sowie die camelCase-Rohfelder der Autobahn-Verkehrsmeldungen (isBlocked, startTimestamp, delayTimeValue, averageSpeed, abnormalTrafficType, extent) sind abgekündigt. Sie tragen weiter denselben Wert wie ihre kanonischen Entsprechungen und werden frühestens 30 Tage nach diesem Eintrag entfernt. Wer sie nutzt, stellt bis dahin auf die neuen Namen um.</description>
    </item>
    <item>
      <title>[Behoben] Abfahrtszeiten tragen jetzt eine Zeitzone</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-25-abfahrtszeiten-tragen-jetzt-eine-zeitzone</guid>
      <pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate>
      <description>planned_time in den Abfahrts- und Ankunftstafeln kam bisher ohne Zeitzone (2026-07-25T10:01:00) und war damit mehrdeutig. Der Wert ist Bahnhofszeit und trägt jetzt die passende Zone (2026-07-25T10:01:00+02:00). Ebenfalls behoben: leere Adressangaben in den Köln-Veranstaltungen kamen als Leerstring statt als null, und Postleitzahlen mit führender Null konnten ihre Null verlieren.</description>
    </item>
    <item>
      <title>[Neu] Spritpreise: Adresse je Tankstelle</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-25-spritpreise-adresse-je-tankstelle</guid>
      <pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate>
      <description>Die Einzel-Tankstellen im Spritpreis-Payload tragen jetzt zusätzlich street, house_number, post_code und place, also die an die MTS-K gemeldete Adresse. Damit ist eine Tankstelle auch ohne Karte benennbar. post_code ist immer ein fünfstelliger String, führende Nullen bleiben erhalten (01067). Meldet die Quelle keine eigene Hausnummer, steht sie oft im Straßennamen (&quot;Rödingsmarkt 14&quot;); sie wird dann abgetrennt, sodass street und house_number getrennt ankommen. Tankstellen ohne jede Hausnummer behalten house_number null. Rein additiv, bestehende Felder bleiben unverändert.</description>
    </item>
    <item>
      <title>[Neu] Spritpreise: Koordinaten je Tankstelle (Kartendarstellung)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-25-spritpreise-koordinaten-je-tankstelle-kartendarstellung</guid>
      <pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate>
      <description>Die Einzel-Tankstellen im Spritpreis-Payload tragen jetzt zusätzlich lat und lon, also die Koordinate der Tankstelle selbst. Damit lassen sich die Tankstellen direkt auf einer Karte darstellen, ohne Zusatz-Lookup. Rein additiv, bestehende Felder bleiben unverändert; liefert die Quelle keine Koordinate, sind lat und lon null.</description>
    </item>
    <item>
      <title>[Geändert] Köln: Parkdaten jetzt direkt von der Stadt Köln (Mobilithek)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-23-koeln-parkdaten-jetzt-direkt-von-der-stadt-koeln-mobilithek</guid>
      <pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate>
      <description>Köln kam bisher über den ParkenDD-Aggregator, dessen Köln-Feed seit 2021 eingefroren ist und daher keine Daten mehr lieferte. Die Parkdaten kommen jetzt direkt von der Stadt Köln über die Mobilithek (DATEX II, Belegung und Stammdaten gejoint, DL-DE/Zero 2.0, Tier A): 41 Parkhäuser mit Live-Belegung, Kapazität, Name und Koordinaten.</description>
    </item>
    <item>
      <title>[Neu] Parken in 14 weiteren Städten (DB BahnPark, bundesweit)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-20-parken-in-14-weiteren-staedten-db-bahnpark-bundesweit</guid>
      <pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate>
      <description>Der /parking-Endpunkt deckt jetzt 14 zusätzliche Städte ab: Berlin, Bochum, Bonn, Bremen, Düsseldorf, Duisburg, Erfurt, Essen, Hannover, Mainz, Saarbrücken, Schwerin, Stuttgart und Wiesbaden. Quelle sind die bahnhofsnahen Parkeinrichtungen der DB BahnPark (DB API Marketplace, DL-DE/BY 2.0, Tier A). Es handelt sich um einen statischen Katalog (Standort, Name, Gesamtkapazität, lot_type=&quot;station&quot;): eine numerische Live-Belegung (free) liefert die Quelle nicht, das Feld bleibt daher null. Städte mit eigener Live-Parkquelle (z.B. Köln, Frankfurt, Hamburg) sind unverändert.</description>
    </item>
    <item>
      <title>[Geändert] OSM-POIs jetzt aus wöchentlichem Precompute (stabiler)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-19-osm-pois-jetzt-aus-woechentlichem-precompute-stabiler</guid>
      <pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate>
      <description>Die POI- und OSM-Infrastruktur-Datenarten (pois, playgrounds, drinking-water, public-toilets, markets, parcel-lockers, post-offices, post-boxes, public-wifi, recycling-centres, government-offices, education) werden ab sofort aus einem periodischen Precompute des OSM-Deutschland-Extrakts (wöchentlich) bedient statt live abgefragt. Envelope, Felder und Lizenz (ODbL, Tier B) bleiben unverändert; total_available nennt weiterhin den echten Gesamtbestand. Vorteil: keine Abhängigkeit von einer öffentlichen Live-Instanz mehr, dadurch deutlich stabiler. Ist der Bestand einer Stadt noch nicht berechnet, antwortet die Route mit 200 source_status=&quot;no_data&quot; statt eines Fehlers.</description>
    </item>
    <item>
      <title>[Neu] Innerstädtische Baustellen für Rostock</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-17-innerstaedtische-baustellen-fuer-rostock</guid>
      <pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate>
      <description>Die Datenart Baustellen/Verkehrsereignisse deckt jetzt auch Rostock ab (OpenData.HRO, CC0). Je Baustelle werden Maßnahme, Sparte, Straße, Abschnitt, Zeitraum und Verkehrsbeeinträchtigung geliefert.</description>
    </item>
    <item>
      <title>[Neu] Ratsdokumente jetzt auch für Magdeburg und Osnabrück</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-17-ratsdokumente-jetzt-auch-fuer-magdeburg-und-osnabrueck</guid>
      <pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate>
      <description>Die Datenart council-papers deckt neben Köln, Leipzig, Münster, Dresden und Düsseldorf jetzt auch Magdeburg (DL-DE/Zero-2.0) und Osnabrück (CC-BY-4.0) ab, beide über die standardisierte OParl-Schnittstelle. Abrufbar unter /api/v1/cities/{stadt}/council-papers sowie per MCP über get_city_resource.</description>
    </item>
    <item>
      <title>[Neu] Bike-Sharing für Kiel (SprottenFlotte)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-17-bike-sharing-fuer-kiel-sprottenflotte</guid>
      <pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate>
      <description>Kiel ist beim Bike- und Scooter-Sharing ergänzt: die SprottenFlotte läuft über Donkey Republic (GBFS 3.0) und liefert jetzt Stationen und Verfügbarkeiten wie bei den übrigen Sharing-Städten. Die Daten stehen unter CC0. Damit unterstützt der GBFS-Adapter erstmals auch die GBFS-Version 3.0 (mehrsprachige Namensfelder, num_vehicles_available).</description>
    </item>
    <item>
      <title>[Neu] Baumkataster für Hamburg und Kiel</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-17-baumkataster-fuer-hamburg-und-kiel</guid>
      <pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate>
      <description>Das Baumkataster deckt jetzt neben Berlin auch Hamburg und Kiel ab. Hamburg liefert das Straßenbaumkataster (Landesbetrieb Geoinformation und Vermessung, DL-DE/BY-2.0), Kiel die Bäume auf städtischem Grund (CC-BY-4.0). Je Baum werden Standort, Art und Kronendurchmesser ausgeliefert.</description>
    </item>
    <item>
      <title>[Neu] Hochwasserwarnungen für Hannover, Kiel und Magdeburg</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-17-hochwasserwarnungen-fuer-hannover-kiel-und-magdeburg</guid>
      <pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate>
      <description>Die Hochwasserwarnungen decken jetzt auch Hannover (Pegel Herrenhausen, Leine), Kiel (Kiel-Holtenau, Ostsee, sturmflutrelevant) und Magdeburg (Niegripp, Elbe) ab. Je Pegel werden Warnstufe, Wasserstand und Zeitstempel geliefert. Quelle sind die Länderübergreifenden Hochwasserportale (LHP).</description>
    </item>
    <item>
      <title>[Behoben] Amtliche Wetterwarnungen wieder verfügbar (neue Bezugsquelle)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-16-amtliche-wetterwarnungen-wieder-verfuegbar-neue-bezugsquelle</guid>
      <pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate>
      <description>Der DWD hat die alte WarnApp-Schnittstelle abgeschaltet, der Endpunkt für amtliche Wetterwarnungen lieferte deshalb kurzzeitig 503. Die Warnungen kommen jetzt über die Bright-Sky-Alerts-API und damit weiterhin dieselben amtlichen DWD-Daten. Die Warnstufen 1 bis 4 werden aus der CAP-severity abgeleitet; Hitze- und UV-Warnungen stehen wie bisher separat in special_warnings und zählen nicht in max_level. Beachte: start und end der Einzelwarnungen sind jetzt ISO-8601-Zeitstempel statt Epoch-Millisekunden.</description>
    </item>
    <item>
      <title>[Behoben] Live-ÖPNV-Abfahrten: Delay-only-Updates und Steig-IDs funktionieren jetzt</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-16-live-oepnv-abfahrten-delay-only-updates-und-steig-ids-funkti</guid>
      <pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate>
      <description>Der Endpunkt für Live-Abfahrten je Halt lieferte fast überall no_data: der bundesweite GTFS-RT-Feed trägt meist nur Verspätungen ohne absolute Abfahrtszeit, und genau solche Einträge wurden verworfen. Jetzt werden sie ehrlich ausgeliefert (delay_s/delay_min gesetzt, departure_time und minutes_until = null) und folgen nach den zeitbehafteten Abfahrten, die es z.B. in Berlin über den VBB-Feed gibt. Außerdem darf stop_id jetzt Parent- oder Steig-Ebene sein (de:AGS:nr oder de:AGS:nr:bereich:steig), beide werden aufgelöst.</description>
    </item>
    <item>
      <title>[Neu] Ratsdokumente: kompletter Datenbestand für 5 Städte (112.000+ Dokumente)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-16-ratsdokumente-kompletter-datenbestand-fuer-5-staedte-112-000</guid>
      <pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate>
      <description>Die neue Datenart council-papers liefert Ratsinformationen (Vorlagen, Anträge, Beschlüsse) über die standardisierte OParl-Schnittstelle für Köln, Leipzig, Münster, Dresden und Düsseldorf. Der historische Rückbezug ist jetzt komplett: über 112.000 Dokumente ab 2020, davon allein 48.000+ aus Leipzig. Neue Dokumente werden laufend ergänzt. Abrufbar unter /api/v1/cities/{stadt}/council-papers sowie per MCP über get_city_resource.</description>
    </item>
    <item>
      <title>[Geändert] Doku: neue Navigation mit Aufgaben-Gruppen und mobilem Drawer</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-11-doku-neue-navigation-mit-aufgaben-gruppen-und-mobilem-drawer</guid>
      <pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate>
      <description>Das Doku-Menü ist neu gegliedert in Loslegen, Grundlagen, API-Referenz, KI &amp; Integrationen und Projekt. Die API-Referenz zeigt jetzt sprechende Namen statt operationIds (die operationId erscheint beim Überfahren), Live-Endpunkte stehen in ihrer Themenkategorie mit LIVE-Badge statt in einer eigenen Sektion. Das Badge markiert Echtzeitdaten unabhängig vom Pfad, also auch Spritpreise, Parkhaus-Belegung, Bahn-Abfahrten oder Ladesäulen-Status. Auf Mobilgeräten öffnet ein Menü-Button in der Kopfleiste einen Drawer, in dem nur die aktive Gruppe aufgeklappt ist. Alle Seiten und URLs bleiben unverändert.</description>
    </item>
    <item>
      <title>[Geändert] Parken: Frische-Schutz gegen eingefrorene Upstreams</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-07-parken-frische-schutz-gegen-eingefrorene-upstreams</guid>
      <pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate>
      <description>Für die ParkenDD-Städte gilt jetzt ein Frische-Wächter: Liefert ein Upstream seit mehr als 48 Stunden keine neuen Belegungszeiten, gibt der Endpunkt no_data zurück statt veralteter Werte. Das verhindert, dass monatealte Parkstände wie aktuelle aussehen. Ein fehlender oder unlesbarer Zeitstempel zählt defensiv nicht als eingefroren.</description>
    </item>
    <item>
      <title>[Neu] Radzählstellen: Düsseldorf ergänzt (8 Städte)</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-04-radzaehlstellen-duesseldorf-ergaenzt-8-staedte</guid>
      <pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate>
      <description>bike-counts liefert jetzt auch die Radzählstellen der Landeshauptstadt Düsseldorf. Damit deckt die Datenart acht Städte ab. Lizenz DL-DE/BY 2.0.</description>
    </item>
    <item>
      <title>[Geändert] Städtevergleich: sechs weitere Datenarten</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-04-staedtevergleich-sechs-weitere-datenarten</guid>
      <pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate>
      <description>Der Vergleich mehrerer Städte in einem Aufruf umfasst jetzt zusätzlich Kennzahlen (indicators), Demografie, Arbeitslosenquote, Tourismus, Ladebelegung und Wetterwarnungen, ergänzend zu Wetter und Luftqualität.</description>
    </item>
    <item>
      <title>[Neu] Baustellen und Sperrungen: Dresden und Leipzig</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-04-baustellen-und-sperrungen-dresden-und-leipzig</guid>
      <pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate>
      <description>road-events liefert jetzt Baustellen und Sperrungen für Dresden und Leipzig aus dem sächsischen SPERRINFOSYS. Lizenz DL-DE/BY 2.0.</description>
    </item>
    <item>
      <title>[Neu] InfraNode als ChatGPT-GPT und GPT-Action</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-04-infranode-als-chatgpt-gpt-und-gpt-action</guid>
      <pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate>
      <description>InfraNode ist jetzt als Custom-GPT im GPT Store verfügbar und lässt sich über eine kuratierte Actions-OpenAPI als GPT-Action einbinden, keylos und per URL-Import. Details unter /chatgpt/.</description>
    </item>
    <item>
      <title>[Neu] Live-Ladebelegung für alle 84 Städte</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-03-live-ladebelegung-fuer-alle-84-staedte</guid>
      <pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate>
      <description>Neue Datenart charging-status: die Echtzeit-Belegung öffentlicher Ladepunkte je Stadt (frei, belegt, lädt, außer Betrieb), aufbereitet aus dem eRound-Feed (CC0). Ergänzt die statischen Ladesäulen-Standorte.</description>
    </item>
    <item>
      <title>[Geändert] MCP-Server auf 12 schlanke Tools konsolidiert</title>
      <link>https://infranode.dev/changelog/</link>
      <guid isPermaLink="false">infranode-changelog-2026-07-02-mcp-server-auf-12-schlanke-tools-konsolidiert</guid>
      <pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate>
      <description>Der gehostete MCP-Server bündelt die 67 Datenarten jetzt in 12 Tools; die Long-Tail-Datenarten laufen über get_city_resource(slug, resource). Bestehende Aufrufe bleiben abgedeckt, die Tool-Liste ist deutlich kürzer.</description>
    </item>
  </channel>
</rss>
