Developer docs
LCA API til klimaberegning
Gratis REST API til klimaberegning og BR25-compliance. Ingen API-nøgle, ingen registrering. Returnerer JSON. Brug det til at integrere CO₂-data og LCA-beregning direkte i dine egne systemer.
Base URL
Alle endpoints er tilgængelige under KlimaBygs API:
https://klimabyg.dk/api
Ingen autentificering er nødvendig. API'et er åbent og gratis for alle.
Endpoints
5 endpoints til materialesøgning, kategorier, BR25-grænseværdier og beregning.
| Metode | Sti | Beskrivelse |
|---|---|---|
| GET | /materials | Sog i materialer |
| GET | /materials/:id | Hent enkelt materiale |
| POST | /calculate | BR25 LCA-beregning |
| GET | /br25/limits | BR25-graensevaerdier |
| GET | /categories | Materialekategorier |
/materials
Sog i materialedatabasen efter navn eller kategori. Returnerer paginerede resultater med CO₂-data (GWP) per materiale.
Query-parametre
| Parameter | Type | Beskrivelse |
|---|---|---|
| q | string | Sogetekst (fuldtekst, fx "beton" eller "stål") |
| category | string | Filtrer efter kategori (fx "beton", "isolering") |
| curated | string | "true" for kun udvalgte materialer |
| page | string | Sidetal (standard: 1) |
| per_page | string | Resultater per side (standard: 20, maks: 100) |
Eksempel
curl "https://klimabyg.dk/api/materials?q=beton&per_page=2"
Svar
{
"data": [
{
"id": "a3f1c2e8-9b4d-4e6f-8a1c-3d5e7f9b2c4a",
"name": "Beton C25/30",
"name_de": "Beton der Druckfestigkeitsklasse C25/30",
"name_da": "Beton C25/30",
"category": "beton",
"gwp_a1a3": 231.0,
"gwp_c3": 1.2,
"gwp_c4": 3.5,
"gwp_d": -12.4,
"unit": "m³",
"service_life": 100,
"source": "oekobaudat",
"declaration_owner": "InformationsZentrum Beton GmbH",
"is_curated": true
},
{
"id": "b7d4e9f1-2a3c-4b5d-8e6f-1c9a3b5d7e2f",
"name": "Beton C30/37",
"name_de": "Beton der Druckfestigkeitsklasse C30/37",
"name_da": "Beton C30/37",
"category": "beton",
"gwp_a1a3": 263.0,
"gwp_c3": 1.3,
"gwp_c4": 3.8,
"gwp_d": -14.1,
"unit": "m³",
"service_life": 100,
"source": "oekobaudat",
"declaration_owner": "InformationsZentrum Beton GmbH",
"is_curated": true
}
],
"total": 47,
"page": 1,
"per_page": 2
}/materials/:id
Hent et enkelt materiale med alle CO₂-data ud fra dets UUID.
Eksempel
curl "https://klimabyg.dk/api/materials/a3f1c2e8-9b4d-4e6f-8a1c-3d5e7f9b2c4a"
Svar
{
"data": {
"id": "a3f1c2e8-9b4d-4e6f-8a1c-3d5e7f9b2c4a",
"name": "Beton C25/30",
"name_de": "Beton der Druckfestigkeitsklasse C25/30",
"name_da": "Beton C25/30",
"category": "beton",
"gwp_a1a3": 231.0,
"gwp_c3": 1.2,
"gwp_c4": 3.5,
"gwp_d": -12.4,
"unit": "m³",
"service_life": 100,
"source": "oekobaudat",
"declaration_owner": "InformationsZentrum Beton GmbH",
"is_curated": true
}
}Returnerer 404 hvis materialet ikke findes.
/calculate
Beregn livscyklusvurdering (LCA) for et byggeri. Inkluderer udskiftninger over 50 ar og tjekker BR25-compliance automatisk. Genbrugte materialer far A1-A3 sat til 0.
Request body (JSON)
| Felt | Type | Beskrivelse |
|---|---|---|
| entries | array | Mindst 1 materiale-entry (se nedenfor) |
| grossFloorArea | number | Bruttoetageareal i m² |
| buildingType | string | En af: fritidshus_lille, enfamiliehus, etagebolig_kontor, institution |
Hver entry i entries-arrayet:
| Felt | Type | Beskrivelse |
|---|---|---|
| materialId | string | UUID fra /materials |
| quantity | number | Maengde i materialets enhed (m³, m², kg) |
| isReused | boolean? | Om materialet er genbrugt (A1-A3 = 0). Standard: false |
Eksempel
curl -X POST "https://klimabyg.dk/api/calculate" \
-H "Content-Type: application/json" \
-d '{
"entries": [
{
"materialId": "a3f1c2e8-9b4d-4e6f-8a1c-3d5e7f9b2c4a",
"quantity": 85,
"isReused": false
},
{
"materialId": "c5e2f8a1-3b7d-4c9e-6f1a-8d2b4e6c9f3a",
"quantity": 120,
"isReused": true
}
],
"grossFloorArea": 150,
"buildingType": "enfamiliehus"
}'Svar
{
"data": {
"totalGWP": 20077.0,
"perM2Year": 2.677,
"isCompliant": true,
"limit": 6.7,
"buildingType": "enfamiliehus",
"grossFloorArea": 150,
"breakdown": [
{
"materialId": "a3f1c2e8-9b4d-4e6f-8a1c-3d5e7f9b2c4a",
"name": "Beton C25/30",
"gwpTotal": 20034.5,
"isReused": false,
"savedCO2": 0,
"replacements": 0
},
{
"materialId": "c5e2f8a1-3b7d-4c9e-6f1a-8d2b4e6c9f3a",
"name": "Konstruktionstrae, gran/fyr",
"gwpTotal": 42.5,
"isReused": true,
"savedCO2": 4860.0,
"replacements": 0
}
]
}
}Beregningsmetode: GWP per materiale = maengde x (A1-A3 + C3 + C4) x (1 + udskiftninger). Udskiftninger = ceil(50 / levetid) - 1. Genbrugte materialer: A1-A3 = 0. Resultat = total GWP / (bruttoareal x 50 ar).
/br25/limits
Returnerer BR25-graensevaerdier for alle bygningstyper, inklusive beregningsperiode og separat A4-A5 graense.
Eksempel
curl "https://klimabyg.dk/api/br25/limits"
Svar
{
"data": {
"buildingTypes": {
"fritidshus_lille": {
"label": "Fritidshus under 150 m²",
"description": "Fritidshuse med et samlet etageareal under 150 m²",
"limit": 4.0
},
"enfamiliehus": {
"label": "Enfamiliehus / raekkehus",
"description": "Enfamiliehuse, raekkehuse, tiny houses og fritidshuse >= 150 m²",
"limit": 6.7
},
"etagebolig_kontor": {
"label": "Etageboliger og kontorer",
"description": "Etageboligbyggeri og kontorbygninger",
"limit": 7.5
},
"institution": {
"label": "Institutioner",
"description": "Institutionsbygninger (skoler, daginstitutioner, hospitaler mv.)",
"limit": 8.0
}
},
"calculationPeriod": 50,
"constructionProcessLimit": 1.5
}
}/categories
Returnerer de 10 materialekategorier med danske labels. Brug noeglen som category-parameter i /materials.
Eksempel
curl "https://klimabyg.dk/api/categories"
Svar
{
"data": {
"beton": "Beton & mortel",
"tegl": "Mursten & tegl",
"trae": "Trae & plader",
"stal": "Stal & metal",
"isolering": "Isolering",
"glas": "Glas & vinduer",
"gulv": "Gulvbelaegning",
"tag": "Tagmaterialer",
"gips": "Gips & plader",
"andet": "Andet"
}
}Datakilder
Materialedatabasen kombinerer data fra flere anerkendte, abne kilder:
Okobaudat
Tysk føderal EPD-database. 1.931 materialer indlæst med GWP-vaerdier opdelt per livscyklusmodul.
Danske generiske LCA-data (gen_dk)
466 danske byggematerialer med korrekte navne, kategorier og klassifikation fra BUILD/AAU.
SBi-anvisning 224 / Molio levetidstabel
Forventede levetider for byggematerialer. Bruges til at beregne udskiftninger over 50 ar.
I alt indeholder databasen over 1.931 materialer med CO₂-data klar til brug i beregninger.
Interaktiv dokumentation
Den fulde OpenAPI-specifikation er tilgaengelig som interaktiv Scalar-dokumentation. Her kan du teste alle endpoints direkte i browseren.
Abn Scalar API docsFejlhandtering
Alle fejl returneres som JSON med en error-nogle:
{
"error": "Material not found"
}| Status | Betydning |
|---|---|
| 200 | Succes |
| 400 | Ugyldigt request (manglende felter, ukendt bygningstype) |
| 404 | Materiale ikke fundet |
| 500 | Serverfejl |
Prov det i beregneren
Se API'et i aktion — vores gratis CO₂-beregner bruger praecis de samme endpoints.
Abn CO₂-beregneren