BIMR API / För fastighetsbestånd

Byggnaden
följer med.

Från beståndets lägesbild till rätt dokument, våning och byggnadsdel. Koppla ihop modellfiler, ärenden och förbrukning med de arbetsflöden ni redan använder.

Här beskrivs befintliga anrop i BIMR:s produkt-API. Åtkomsten är knuten till en användarsession och kontots behörigheter. Läs vad det innebär för er integration.

Flerbostadshus & lokalerHela bestånd & enskilda byggnaderJSON · Fragments · ICS

01 / Färre avbrott mellan systemen

Samma byggnad.
Fler sätt att arbeta.

Från pärmen till förvaltningen.

Lämna dokument genom den gemensamma inläsningen. Följ lässtatus, koppla underlaget till byggnaden och öppna originalet när en uppgift behöver kontrolleras.

Dokument och underlag

Från ärendet till rätt modell.

Hämta byggnadens modellfiler och spara urval av verkliga element. Låt arbetsordern och den som står på plats tala om samma byggnadsdel.

Modeller och markeringar

Från avläsningen till beståndet.

Förhandsgranska en förbrukningstabell innan den sparas. Följ sedan byggnaden och hela beståndet med samma registrerade avläsningar som BIMR använder.

Förbrukning och import

02 / Börja med rätt åtkomst

Ert konto.
Ert omfång.

Anropen använder samma behörigheter som appen. Integrationen utgår från ett befintligt BIMR-konto och en giltig användarsession. Separata integrationsnycklar, OAuth och ett versionsstabilt publikt API-kontrakt ingår inte i den här åtkomsten.

Sessionen ger behörigheten.

Skicka Authorization: Bearer <session> över HTTPS. Håll sessionen på er server; lägg den aldrig i publik kod eller delade exempel. En återkallad eller utgången session kräver ny inloggning.

Rollen följer med.

Alla kontoroller kan läsa. Utförare kan registrera dokument och ärenden. Förvaltare och ägare kan läsa in modeller och ändra byggnadsuppgifter. Använd den lägsta roll som arbetsflödet behöver.

Länken är en egen behörighet.

Modell- och kalenderlänkar är tidsbegränsade och kan återkallas. Modellänken ger tillgång till tillhörande modellfiler; en visuell markering begränsar inte filens innehåll till just de markerade delarna.

Anslut med ett tydligt omfång.

Bestäm byggnader, filer, läsning, skrivning och mottagare. Egna webbläsarorigin måste tillåtas separat. Anrop mellan servrar behöver ingen CORS-ändring. Källdata behåller sina användningsvillkor.

Filgränser, svar och återförsök

Dokumentinläsningen har en gräns på 50 MiB per fil. IFC-inläsningens standard är 250 MiB och två samtidiga inläsningar; serverinställningar kan ändra dessa två värden. Ljudtranskription har en separat gräns på 15 MiB. Stora discipliner bör skickas som separata filer.

401 betyder att session saknas eller inte är giltig. 403 betyder otillräcklig behörighet. 404 kan betyda saknad eller otillgänglig resurs. Upptagen inläsning kan svara 503. Inloggning och tokenrutter kan svara 429 med Retry-After.

Det finns ingen generell utfästelse om anropskapacitet eller idempotensnyckel. Skicka inte automatiskt om ett skrivande anrop vars svar försvann; kontrollera resultatet först. Fel från JSON-rutter använder vanligtvis {"error":"…"}; fil- och kalenderanrop kan ge andra innehållstyper. Läs status och Content-Type innan svaret tolkas.

03 / Ett första anrop

Hitta byggnaden.
Behåll dess identitet.

Börja med beståndets modellregister.

GET /api/projects returnerar byggnader och deras modellfiler. Behåll byggnadens id i er koppling; använd modellens id för att hämta dess Fragments-fil.

Exempelbiblioteket märks med is_sample. Filtrera bort dessa byggnader när ni visar kundens eget bestånd. Modellens element_count är ett registrerat antal element, inte en kvalitetsbedömning.

Kommandot körs på er server med en befintlig session. Sidan gör inga API-anrop. Namn, ID:n och tal i exemplet är fiktiva.

Koppla även assistenten till vyn
Byggnader och modellfilerFiktiva exempelvärden
curl --fail-with-body \
  https://bimr.heimlandr.io/api/projects \
  -H "Authorization: Bearer $BIMR_SESSION"
Exempel på svar, förkortat
{
  "projects": [{
    "id": "11111111-1111-4111-8111-111111111111",
    "name": "Kvarteret Linden, hus A",
    "is_sample": false,
    "models": [{
      "id": "22222222-2222-4222-8222-222222222222",
      "name": "linden-a-arkitektur",
      "status": "ready",
      "element_count": 12480
    }]
  }]
}

04 / Anrop som finns i produktens API

Välj arbetsflöde.
Se vad anropet gör.

Ett granskat urval av 29 befintliga anrop inom 7 områden. Behörigheten visas för varje anrop. Kolonparametrar, som :id, ersätts med resursens ID.

01Hela fastighetsbeståndetByggnader, modellfiler och uppgifter med samma identitet genom hela flödet.5 anrop

För fastighetsägare, förvaltare och systemintegratörer

Läsningen följer kontot. Modellbiblioteket kan även innehålla märkta exempelbyggnader. Registeruppgifter har sina egna källor och villkor.

Lista byggnader och modellfiler

Alla kontoroller

Byggnads-ID, namn, ägarkoppling och modeller med status och antal element. Exempelbyggnader anges med is_sample.

GET /api/projects

Ingen frågekropp. Svaret är {projects:[…]}; listan har ingen sidindelning.

Läs fastighetsregistret

Alla kontoroller

Kontots byggnader och registrerade fastighetsuppgifter, även när en 3D-modell saknas.

GET /api/properties

Ingen frågekropp. Skilj saknade uppgifter från värdet noll.

Hämta byggnadens underlag

Alla kontoroller

Registrerade fakta och underlag för den valda byggnaden.

GET /api/properties/:id/facts

id är byggnadens UUID. Registeruppgifter beror på tillgängligt underlag.

Uppdatera byggnadens uppgifter

Förvaltare och ägare

Ändrar tillåtna uppgifter på kontots befintliga byggnad.

PATCH /api/properties/:id

Byggnads-ID och JSON med de fält som ska ändras. Behåll byggnadens ID när adressen kompletteras.

Läs beståndets lägesbild

Alla kontoroller

Byggnader, placering och behov av uppmärksamhet från samma underlag som BIMR:s karta.

GET /api/karta

Ingen frågekropp. Byggnader utan koordinater hanteras som oplacerade.

02Från pärm till byggnadsunderlagDokument, ritningar och anteckningar kopplas till rätt byggnad.5 anrop

För fastighetsägare, förvaltare och systemintegratörer

Inläsningen kan skapa uppgifter, datum och utkast enligt kontots styrning. En mottagen fil är inte en garanti för att alla sidor kunnat tolkas.

Lämna dokument till inläsningen

Utförare och uppåt

Läser och registrerar dokumentet med lässtatus och byggnadskoppling.

POST /api/documents

multipart: file och valfritt project_id. JSON-anteckning: name, content och project_id. PDF/bild kan ange allow_ai=false för att avstå AI-läsning av skannat innehåll. Ljud har en separat transkriptionsväg.

Lista dokument och lässtatus

Alla kontoroller

Dokumentnamn, typ, datum, byggnad, antal sidor, läsmetod och status.

GET /api/documents

limit 1–200, standard 100; offset från 0. Svaret innehåller documents, total, limit, offset och has_more.

Koppla dokumentet till rätt byggnad

Utförare och uppåt

Uppdaterar byggnadskopplingen och låter dokumentets uppgifter följa byggnaden.

PATCH /api/documents/:id

JSON: {project_id}. Både dokument och målbyggnad måste tillhöra kontot.

Öppna originalet

Alla kontoroller

Originalfilens bytes med filens innehållstyp.

GET /api/documents/:id/file

Dokument-ID och Bearer-session. Filen är inte en publik nedladdning.

Läs uppmätt inläsningskostnad

Alla kontoroller

Kontots egen historik för AI-läsning, till underlag för ett större dokumentintag.

GET /api/documents/cost

Ingen frågekropp. Utan historik saknas ett uppmätt genomsnitt.

03Modeller och byggnadsdelarIFC in, läsbara modellfiler ut och markeringar som följer rätt element.4 anrop

För fastighetsägare, förvaltare och systemintegratörer

Modellnedladdningen ger Fragments, inte IFC-export. V-BIM:s ritningstolkning och IFC-generering sker i appens modelleringsflöde och har ingen fristående konverteringsrutt i detta API.

Läs in en IFC-modell

Förvaltare och ägare

Konverterar och registrerar en modell för byggnaden. Modellstatus läses via /api/projects.

POST /api/upload

multipart: file, project eller project_id. Standardgräns 250 MiB, serverkonfigurerbar. Två samtidiga inläsningar som standard; upptagen server svarar 503.

Hämta modellens visningsfil

Alla kontoroller

Binär Fragments-fil för modellvisning.

GET /api/models/:id/frag

Modellens UUID och Bearer-session. En giltig delningslänk kan också ge tillgång till sin modell via ?s=token.

Läs sparade markeringar

Alla kontoroller

Namngivna urval av modellens byggnadsdelar.

GET /api/markups

Ingen frågekropp. Svaret är {markups:[…]}.

Spara ett urval av byggnadsdelar

Utförare och uppåt

Sparar en markering och returnerar dess id.

POST /api/markups

JSON: name och element_map. Kartan använder modellnamn och modellens verkliga lokala element-ID:n.

04Datum, ärenden och byggnadens historiaFölj arbetet från beståndets kalender till den enskilda byggnaden.6 anrop

För fastighetsägare, förvaltare och systemintegratörer

Planerat arbete är skilt från utfört arbete. Datum och historik behåller sitt underlag; ett AI-utkast är inte en mänsklig bekräftelse.

Läs vad som behöver uppmärksamhet

Alla kontoroller

Beståndets prioriterade agenda från registrerade datum och ärenden.

GET /api/agenda

Ingen frågekropp. Agendan är ett begränsat urval, inte en fullständig export.

Hämta kalenderns underlag

Alla kontoroller

Registrerade skyldigheter, utförda åtgärder, byggnader och intervallkatalog.

GET /api/kalender

Svaret innehåller obligations, actions, buildings och catalog. Bokade ärenden hämtas separat via /api/jobs.

Läs byggnadens historia

Alla kontoroller

Åtgärder med ankare och underlag för vald byggnad.

GET /api/projects/:id/actions

Byggnadens UUID. Behåll source, status och date_precision när historiken visas.

Läs ärenden och arbetsorder

Alla kontoroller

Kontots ärenden med status och registrerade bokningar.

GET /api/jobs

Ingen frågekropp. Svaret är {jobs:[…]}.

Registrera ett ärende

Utförare och uppåt

Skapar ett öppet ärende på vald byggnad.

POST /api/arenden

JSON med title och project_id; beskrivning och ankare kan knyta ärendet till platsen.

Boka tid för ett ärende

Utförare och uppåt

Sparar ärendets planerade tid.

POST /api/jobs/:id/schedule

JSON: scheduled_at. Bokningen ändrar inte ett registrerat besiktningskrav.

05Förbrukning genom hela beståndetMånadsavläsningar och byggnadsvisa överblickar med beräkningsgrund.3 anrop

För fastighetsägare, förvaltare och systemintegratörer

Årsjämförelser kräver tillräckliga avläsningar. Väderkorrigering beror på station och underlag. Bevara källor och markeringar för uppskattade värden.

Läs beståndets förbrukning

Alla kontoroller

Sammanställning över kontots byggnader för valt år.

GET /api/forbrukning

?year=2025. År 2000–2100 accepteras; saknat eller ogiltigt år använder innevarande år.

Följ en byggnads energianvändning

Alla kontoroller

Byggnadens serier och överblick med underlag för beräkningarna.

GET /api/forbrukning/:projectId

Byggnadens UUID och valfritt ?year=2025.

Läs in en förbrukningstabell

Utförare och uppåt

Tolkar tabellen och visar vad som kan registreras. Förhandsgranskning är standard.

POST /api/forbrukning/import

JSON: text, valfritt project_id och formatinställningar. dryRun måste uttryckligen vara false för att spara.

06Frågor som når ända in i modellenByggnadens underlag och modellens verkliga element möter samma assistent.1 anrop

För fastighetsägare, förvaltare och systemintegratörer

Ett AI-svar kan innehålla verktygsåtgärder. Vyn måste genomföra och kvittera en visningsåtgärd. En fristående HTTP-klient får ingen 3D-vy bara genom svaret.

Fråga byggnaden och styr en ansluten vy

Alla kontoroller

Svarstext och åtgärder. Behörighet och aktiv yta avgör vilka verktyg assistenten får använda.

POST /api/chat

JSON: messages, valfritt house, surface, loaded, selection och viewer.capabilities. explode drar isär våningar i vyn. Kontots roll begränsar skrivverktyg; chat är inte en generell read-only-rutt.

07Överlämningar med avgränsad åtkomstVisa utvalda byggnadsdelar och prenumerera på kalendern genom återkallbara länkar.5 anrop

För fastighetsägare, förvaltare och systemintegratörer

Länken är en behörighet. Skydda den som en hemlighet. En modellfil kan innehålla mer än de visuellt markerade delarna.

Skapa en modellänk

Utförare och uppåt

En tidsbegränsad länk för markeringen och tillhörande modeller.

POST /api/markups/:id/share

Markeringens id. Valfri JSON: label och days. Returnerar en länk, inte ett automatiskt e-postutskick.

Öppna en delad markering

Avgränsad länk

Underlaget som den giltiga delningslänken ger åtkomst till.

GET /api/share/:token

Länkens token. Kontosession behövs inte; utgången eller återkallad länk ger ingen åtkomst.

Återkalla en modellänk

Utförare och uppåt

Stänger länken för fortsatta läsningar.

DELETE /api/shares/:id

Länkens id, inte dess hemliga token. Redan nedladdade filer återkallas inte.

Skapa en kalenderprenumeration

Utförare och uppåt

En tidsbegränsad kalenderlänk för hela kontots kalender.

POST /api/kalender/ics

Valfri JSON: label. Giltighet 365 dagar. Använd länken som returneras; den omfattar kontot, inte en valfri byggnad.

Hämta kalendern som ICS

Avgränsad länk

Kalenderdata i text/calendar för prenumerationen.

GET /api/kalender.ics

Använd hela länken från /api/kalender/ics. Länkens token ersätter kontosessionen.

En integration börjar med ert arbetsflöde

Vilken byggnadsinformation behöver ni få vidare?

Beskriv ert fastighetsbestånd, systemet ni vill koppla och vilka uppgifter ni vill läsa eller registrera. Då kan vi avgränsa en konkret integration.

Kontakta BIMR