Historik-API — tidsrejs i danske ejendomsdata (?asOf=)
Grundfast lader dig hente danske ejendomsdata, som de så ud på en bestemt dato — ikke kun det nuværende. Sæt ?asOf=YYYY-MM-DD på et hvilket som helst opslag, eller skift til /historik for hele tidslinjen. Det virker på tværs af BBR (ejendom), DAR (adresse) og Matriklen (jordstykke) — den klareste forskel på et rigtigt ejendoms-lag og en ren adresse-drop-in.
GET /v1/bbr/ejendom/:bfe?asOf=Hvad Historik-API’et giver dig
Point-in-time med ?asOf=
Sæt ?asOf=YYYY-MM-DD på et hvilket som helst BBR-, DAR- eller Matriklen-opslag og få posten, som den så ud på præcis den dato — ikke den nuværende. Én parameter, samme datakontrakt, samme nøgle.
Fuld /historik-tidslinje
Skift /:bfe ud med /:bfe/historik og få hele rækken af versioner tilbage — hver med sit gyldighedsinterval — så du kan tegne en tidslinje over, hvordan en ejendom, adresse eller matrikel har ændret sig.
Dækker BBR, DAR og Matriklen
Historik virker på tværs af registrene: BBR-ejendom (bygning + enhed), DAR-adresse og Matriklens jordstykke — samme ?asOf= og /historik-mønster på hver, så du ikke skal lære tre forskellige historik-API’er.
Bitemporalt oven på Datafordeler
Vi læser Datafordelers registreringstid/virkningstid og genudstiller den strippet for bitemporal støj: du får den version, der var gældende på din skæringsdato — cachet og retry’et, så et historik-opslag står op selv når upstream flapper.
Hvornår bruger du historik
Valuering på en skæringsdato
Værdiansæt en ejendom ud fra BBR-arealet, som det var på handels- eller vurderingsdatoen — ikke som det ser ud i dag. Sæt ?asOf= til skæringsdatoen og få det gældende grundlag.
Revision & audit-spor
Dokumentér præcis hvilke data din beslutning byggede på. /historik giver et versioneret spor med gyldighedsintervaller, der kan lægges i et sagsakt- eller revisionsforløb.
“Hvad var BBR-arealet i 2019?”
Besvar konkrete tilbageblik uden at gemme egne snapshots: ét ?asOf=2019-01-01-kald giver bygningens boligareal, etager og anvendelse, som de var registreret dengang.
Tilstand før/efter en ombygning
Sammenlign to datoer omkring en om- eller tilbygning — eller kør /historik og se selve ændringen som to versioner i tidslinjen, med det interval hvor hver var gældende.
Status & datakontrakt
?asOf= og /historik er live på BBR, DAR og Matriklen — samme nøgle og metering som de øvrige registre.Ærlig forbehold — Matriklen uden geometri
For Matriklen returnerer ?asOf= kun jordstykkets attributter (matrikelnummer, ejerlav, areal mv.) — ikke polygon-geometrien på den historiske dato. Datafordelers historiske Matriklen-udstilling giver ikke geometri tilbage på en vilkårlig skæringsdato, så vi lover den ikke. BBR- og DAR-historik er attributter; aktuelle bygningspolygoner får du via /v1/geodanmark/bygninger/:bfe.
# Point-in-time BBR-ejendom, Bearer gf_live_…: GET /v1/bbr/ejendom/5651067?asOf=2019-01-01 → 200 { type: "ejendom", bfe_nummer: 5651067, bygninger: [ { id: "…", type: "bygning", anvendelse: { kode: "120", tekst: "Fritliggende enfamiliehus" }, opfoerelsesaar: 1974, antal_etager: 1, areal: { samlet_boligareal_m2: 118 } } ], meta: { kilde: "Datafordeler BBR via Grundfast", grundfast_version: "1", as_of: "2019-01-01" } } # din skæringsdato, ekko'et i meta # Hele tidslinjen — én versionsliste pr. bygning, nyeste først: GET /v1/bbr/ejendom/5651067/historik → 200 { type: "bbr_historik", bfe_nummer: 5651067, bygninger: [ { id: "…", afkortet: false, versioner: [ { registrering_fra: "2018-07-01", registrering_til: null, virkning_fra: "2018-07-01", virkning_til: null, antal_etager: 1, areal: { samlet_boligareal_m2: 118 } }, { registrering_fra: "1974-01-01", registrering_til: "2018-06-30", virkning_fra: "1974-01-01", virkning_til: "2018-06-30", antal_etager: 1, areal: { samlet_boligareal_m2: 96 } } ] } ], afkortet: false, meta: { kilde: "Datafordeler BBR via Grundfast", grundfast_version: "1", omfang: "aktuelle_bygninger" } }
Kald historik i din stack
Samme opslag som altid, med ?asOf= for ét snapshot — eller /historik for hele tidslinjen. Request øverst, svaret nedenfor:
curl -H "Authorization: Bearer gf_live_xxx" \ "https://api.grundfast.dk/v1/bbr/ejendom/5651067?asOf=2019-01-01" # Hele tidslinjen: curl -H "Authorization: Bearer gf_live_xxx" \ "https://api.grundfast.dk/v1/bbr/ejendom/5651067/historik"
/v1/bbr/ejendom/:bfe?asOf=BBR-ejendom, som den var på datoen. Skift til /v1/bbr/ejendom/:bfe/historik for hele tidslinjen.
/v1/adresse/:uuid?asOf=DAR-adresse på en skæringsdato — plus /historik-varianten.
/v1/matrikel/ejendom/:bfe?asOf=Matriklens jordstykke-attributter på datoen. Bemærk: ingen historisk geometri — kun attributter.
Kom i gang med historik
Opret en gratis nøgle og læg ?asOf= på et opslag, du allerede laver — eller kald /historik for tidslinjen. Skal du berige en hel portefølje på skæringsdatoer? Skriv til os.
Se også BBR-API’et, Matrikel-API’et og Adresse-API’et (DAR).
Ofte stillede spørgsmål
Hvad er et point-in-time / historik-API?
Et historik-API lader dig hente danske ejendomsdata, som de så ud på en bestemt dato, i stedet for kun det nuværende. Grundfast gør det på to måder: ?asOf=YYYY-MM-DD på et almindeligt opslag giver den version, der var gældende på den dato, og /historik-varianten giver hele tidslinjen af versioner med gyldighedsintervaller. Det virker på BBR (ejendom), DAR (adresse) og Matriklen (jordstykke).
Hvordan bruger jeg ?asOf=?
Sæt ?asOf=YYYY-MM-DD på et hvilket som helst BBR-, DAR- eller Matriklen-læseopslag — fx GET /v1/bbr/ejendom/5651067?asOf=2019-01-01. Du får posten, som den var registreret som gældende på den dato. Uden ?asOf= får du den nuværende version. Samme nøgle, samme datakontrakt.
Hvad er forskellen på ?asOf= og /historik?
?asOf= giver ét snapshot: den ene version, der var gældende på din skæringsdato. /historik giver hele rækken: alle versioner af ejendommen/adressen/jordstykket, hver med sit gyldighedsinterval, så du kan tegne en tidslinje eller finde selve ændringstidspunktet. Brug ?asOf= når du kender datoen, og /historik når du vil se forløbet.
Hvilke registre understøtter historik?
BBR (ejendom — bygning + enhed), DAR (adresse) og Matriklen (jordstykke). Hvert af disse read-endpoints tager ?asOf= og har en /historik-variant, fx GET /v1/bbr/ejendom/:bfe/historik. DAGI, DHM og Stednavne er referencedata uden samme bitemporale historik.
Får jeg matrikel-geometrien med i historik?
Nej — og det siger vi ligeud. For Matriklen returnerer ?asOf= kun jordstykkets attributter (matrikelnummer, ejerlav, areal mv.), ikke polygon-geometrien på den historiske dato. Datafordelers historiske Matriklen-udstilling giver ikke geometri tilbage på en vilkårlig skæringsdato, så vi lover den ikke. BBR- og DAR-historik er attributter; for aktuelle bygningspolygoner bruger du GET /v1/geodanmark/bygninger/:bfe.
Hvor langt tilbage rækker historikken?
Så langt tilbage som Datafordelers register selv fører den — det varierer per ejendom og register, og for ældre ændringer kan granulariteten være grovere. Vi opdigter ikke versioner: du får præcis de registreringer, kilden har, med de gyldighedsintervaller den angiver. Er der ingen registrering på din ?asOf=-dato, får du en tom eller nærmeste-gældende version, ikke et gæt.
Er Grundfast officielt / tilknyttet SDFI?
Nej. Grundfast er et uafhængigt compatibility-lag — uofficielt, men det virker. Historik-data stammer fra Datafordeler (BBR, DAR, Matriklen) via SDFI; vi krediterer kilden.
Historik i hele Danmark
Slå enhver dansk ejendom, adresse eller matrikel op, som den var på en skæringsdato — bitemporal BBR, DAR og Matriklen genudstillet fra den cachede Datafordeler-mirror. Landsdækkende, i din egen gf_-nøgle.