Integration API — prosesskart¶
Denne siden viser hovedflyten gjennom Integration API på
https://connect.elportal.no: fra et eksternt system autentiserer seg, via
tenant-oppløsning, til data leses eller endres i riktig kundedatabase.
API-et er en separat .NET 8-løsning. Kildereferanser på disse sidene er
relative til repoet ePortal Integration API.
flowchart LR
client["Eksternt system"] --> api["connect.elportal.no"]
api --> version{"API-versjon"}
version -- "v1" --> key["Valider X-API-Key"]
version -- "v2" --> token["Valider JWT Bearer-token"]
key --> tenant["Finn kundedatabase"]
token --> tenant
tenant --> controller["Controller og validering"]
controller --> service["Fagtjeneste"]
service --> clientdb[("Kundedatabase")]
service --> erp[("ERP-database<br/>ved enkelte flyter")]
controller --> response["ApiResponse"]
response --> client
Start og slutt¶
Startpunkt: En registrert klient har credentials og sender et kall til et v1- eller v2-endepunkt.
Sluttpunkt: Klienten får en HTTP-status og en respons. Ved skrivekall må
klienten i tillegg kontrollere Success, eventuell resultatliste og om
endepunktet faktisk har implementert persistens.
Delprosesser¶
| Delprosess | Når brukes den? | Side |
|---|---|---|
| Autentisering og tenant | Oppsett av klient, token/API-nøkkel og valg av kundedatabase | Autentisering og tenant |
| Request og dataflyt | Forstå middleware, lesing, skriving, batch og kvitteringer | Request og dataflyt |
| Fagområder og dataeffekter | Finne riktig controller og se hva som faktisk lagres | Fagområder og dataeffekter |
| Drift og feil | Feilsøke statuskoder, logger, ErrorCode, payload og health |
Drift, feil og sporbarhet |
Versjoner¶
flowchart TD
need["Ny eller eksisterende integrasjon"] --> choice{"Kan klienten bruke OAuth?"}
choice -- "Ja" --> v2["Bruk /api/v2<br/>client credentials"]
choice -- "Nei, eksisterende avtale" --> v1["Behold /api/v1<br/>X-API-Key midlertidig"]
v1 --> plan["Planlegg migrering"]
plan --> v2
| Versjon | Autentisering | Controller-endepunkter | Bruk |
|---|---|---|---|
| v2 | Microsoft Entra ID OAuth 2.0, client credentials | 84 | Anbefalt for nye integrasjoner |
| v1 | X-API-Key |
83 | Legacy og eksisterende klienter |
Antallene er telt fra [HttpGet], [HttpPost], [HttpPut] og
[HttpDelete] i controllerne. Swagger er kontraktreferansen for nøyaktige
request- og response-modeller.
Systemgrenser¶
| Område | Ansvar |
|---|---|
| Klient/integrator | Tokenhåndtering, retry, validering av respons og trygg lagring av credentials |
| Integration API | Autentisering, tenant-oppløsning, inputvalidering, mapping og tjenestekall |
wv_sys |
v1-domeneoppslag, v2 tenant/client-mapping og sentral feillogg |
| Kundedatabase | ePortal-tabeller, lagrede prosedyrer og kundespesifikk konfigurasjon |
| ERP-database | Eksterne kostnader og andre flyter som leser eller kvitterer direkte mot ERP |
Viktige avgrensninger¶
- Integration API er ikke Konti Connect-scheduleren. Konti Connect kan være en klient av API-et, men har egen kjøringsmotor og historikk.
- HTTP
200betyr at requesten ble behandlet. For enkelte Accounting-ruter betyr responsen bare at endepunktet ble nådd; se oversikten over dataeffekter. - v1 og v2 deler de samme fagtjenestene, men bruker forskjellig autentisering og tenant-oppløsning.
- Dokumentasjonen står i
reviewfordi Integration API-repoet hadde aktive, ikke-committede endringer ved kildekontrollen 10. juni 2026.