Introduktion
Provet journalsystem kan integreres med tredjepartsapplikationer ved hjælp af værktøjer kaldet REST API og PUSH.
PUSH er tilgængelig i Provet til at sende notifikationer til tredjepartssystemer om tilføjelser eller ændringer i dataene i Provet. PUSH’erne overfører ikke de faktiske ændrede data, men i stedet informationen om, hvad der er ændret, ved blot at underrette tredjepartssystemet om ændringen. De faktiske data kan derefter hentes af tredjepartssystemet ved at anvende Provet’ REST API.
REST API er en kommunikationsmetode til at få adgang til, redigere eller tilføje data, der ligger i Provet-programmet, programmatisk via enhver tredjepartsapplikation. Provet’ REST API giver de fleste af de vigtigste Provet-data, som kan læses eller manipuleres af andre systemer.
Kombinationen af Provet PUSH og REST API skaber unikke muligheder for at bygge integrerede løsninger. Enhver leverandør af andre systemer, der kender til disse teknologier, kan nemt integrere med dataene i Provet journalsystem ved hjælp af disse teknologier.
Før du kan begynde at bruge Provet APIs, skal vi aktivere adgang til et testmiljø for dig. Kontakt venligst vores Partner Development Manager for at komme i gang.
Vi opretter et testmiljø til dig, som du kan få adgang til under den indledende udvikling. Vi opretter også en integrationsskabelon med den ønskede OAuth2 grant type til dig med adgang til dit testmiljø. Det gør det muligt for dig at udvikle og teste din kode med vores API.
Se vores udviklerside for API-dokumentation, API-skema og andre værdifulde oplysninger, der kan hjælpe dig i din udvikling.
PUSH
PUSH kan konfigureres og aktiveres i Indstillinger > Integrationer > PUSH eller via en API-endpoint. Hvis din integration bruger PUSH, anbefaler vi at automatisere oprettelsen af PUSH via en API. Se vores udviklersite for den seneste Liste over PUSH-triggere og den detaljerede PUSH-guide.
REST API
Provet stiller REST API til rådighed for at aktivere adgang til data, der er gemt i Provet. API’et bruger OAuth 2.0 authentication. Dataene returneres i JSON-formatet.
For at få adgang til REST API skal du bruge en integrationsskabelon.
Provet API support two grant types: Authorization Code og Client Credentials.
Authorization Code bruges til at validere brugergrænseflader og tilfælde, hvor brugere tilgår API’et som sig selv. PKCE understøttes og anbefales stærkt. Public clients MUST use PKCE.
Client Credentials bruges til backend-forbindelse, hvor services kommunikerer direkte med en anden uden nogen brugerhandlinger.
REST API kan tilgås ved at bruge en URL, der er sammensat som følger: https://<provet_environment>/<provet_id>/api/0.1/
URL’en for <provet_environment> adskiller sig en smule for hvert miljø. Den kan for eksempel
provetcloud.com til EU-miljø
us.provetcloud.com til US-miljø
I URL’en <provet_id> er den unikke ID for Provet-instansen til din virksomhed
Hele URL’en vises altid i API indstillinger i Provet under Indstillinger > Integrationer > Åbn API-adgang.
Provet REST API er browsable, hvilket bør give en god mulighed for udviklere til at vurdere mulighederne for dataoverførsel.
Tilføj en integrationsapplikation i Provet
Når skabelonen er oprettet, kan integrationen ses i integrationskataloget i Provet: Indstillinger > Integrationer > Åbn API-adgang > Tilføj app. Kataloget viser de tilgængelige integrationer og indeholder en kort beskrivelse af, hvad hver integration gør. Hvis integrationen har flere opsætningsinstruktioner, vises det også i kataloget.
Integrationer kan have begrænset synlighed: De kan begrænses til kun bestemte Provet tenants eller i bestemte lande. Den tredjepart, der leverer integrationen, kan vælge, hvor bredt integrationen skal være synlig på tenants. Når der er begrænsninger, vises applikationen i integrationskataloget kun på de tenants / i de lande, hvor den er tilladt.
Indstillinger ved ny klientregistrering
Hver gang en ny klient registrerer sig for at bruge en integration, det vil sige vælger den fra integrationskataloget i Provet (Tilføj app), sendes der unikke klientoplysninger til integrationsleverandøren. Der er to muligheder for at underrette en registrering af en ny klient, som kan vælges, når du opretter en integrationsskabelon:
E-mail
knyt URL
Når integrationen kun bruges på én Provet-instans, er E-mail et godt valg: så kan personen, der modtager E-mailen, konfigurere autentificeringsdetaljerne til integrationen og starte med at bruge den. På den anden side, når integrationen bruges bredt, anbefales knyt URL og automatisering af tilføjelse af en ny klient.
Knyt URL lytter efter automatiserede notifikationer om nye klienter. Når en ny klient tilføjer integrationen i Provet, sender orchestreringsværktøjet automatisk en JSON-besked til den angivne URL. Der er ikke behov for nogen menneskelig interaktion, når integrationen automatisk parser den nye klient fra JSON-beskeden og tilføjer deres legitimationsoplysninger til deres klienttabel.
JSON-skema for data, der sendes til nye integrationsregistreringer:
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": [ "provet_id", "client_id", "client_secret", "algorithm", "authorization_grant_type", "client_type", "redirect_uris", "token_url", "authorize_url", "openid_autodiscovery_url" ], "properties": { "provet_id": { "type": "number", "description": "Provet ID of the tenant who added this integration." }, "client_id": { "type": "string" }, "client_secret": { "type": ["null", "string"] }, "algorithm": { "type": ["null", "string"], "description": "Signing algorithm used.", "examples": [null, "HS256", "RS256"] }, "authorization_grant_type": { "type": "string", "description": "Authorization flow used.", "examples": ["authorization_code", "client_credentials"] }, "client_type": { "type": "string", "description": "Client type.", "examples": ["confidential", "public"] }, "redirect_uris": { "type": "string", "description": "Space-separated list of callback URIs.", "examples": ["https://example.com/callback"] }, "token_url": { "type": "string", "description": "OAuth2.0 token endpoint URL." }, "authorize_url": { "type": "string", "description": "OAuth2.0 authorize endpoint URL." }, "openid_autodiscovery_url": { "type": ["null", "string"], "description": "OpenID autodiscovery URL. Null if integration does not use OpenID." }, "departments": { "type": "array", "items": { "type": "integer" }, "description": "Array of department IDs that have enabled this integration.", "examples": [[1, 2, 3]] }, "added_department": { "type": "integer", "description": "ID of the department that enabled this integration.", "examples": [3] }, "removed_department": { "type": "integer", "description": "ID of the department that disabled this integration.", "examples": [3] } }}
Tilladelser
Når en ny integrationsapplikation tilføjes til Provet, oprettes der automatisk en virtuel bruger og en tilladelsesgruppe til integrationen. Den virtuelle bruger hedder Integration <Integrationsnavn>, og kan findes i Indstillinger > Brugere ved hjælp af filteret Virtuel. Tilladelsesgruppen har samme navn som integrationen.
Provet understøtter automatisk tilladelsesstyring, hvilket reducerer manuelt arbejde og sikrer ensartethed. Denne funktion kaldes "permission template" og tilføjes på integrationsskabelonen. Kontakt Provet support for at få din tilladelsesskabelon på din integrationsskabelon.
Når tilladelsesskabeloner ændres, opdateres den tilknyttede tilladelsesgruppe i Provet automatisk for at matche den nyeste skabelon. De tilføjede tilladelser medtages, og de fjernede tilladelser ekskluderes for at sikre synkronisering.
Hvis en tilladelsesskabelon ikke bruges, har den som standard de samme tilladelser som tilladelsesgruppen Brugere.
Hvis en integration kræver forskellige tilladelser (nogle endpoints er nægtet, eller du vil begrænse tilladelserne), skal tilladelserne redigeres. Tjek i Provet API schema, hvilke tilladelser hver endpoint kræver. Se også View and Manage User Permissions.
Integrering specifik for klinikafdeling
I Provet-miljøer med flere klinikafdelinger kan en integration aktiveres eller deaktiveres separat for hver klinikafdeling. Denne indstilling er kun informativ og opretter ingen yderligere klientdata. Listen over klinikafdelinger, hvor integrationen er aktiveret, indgår i datalastningen i PUSH’en.
Hver gang integrationen aktiveres eller deaktiveres for en klinikafdeling, sendes der en ny PUSH, der indeholder følgende information:
Alle aktuelt aktiverede afdelinger
Den afdeling, der blev tilføjet
Den afdeling, der blev fjernet
Denne funktionalitet er normalt ikke påkrævet. Hvis du har brug for at have information om, hvilke klinikafdelinger der bruger eller ikke bruger din integration på den samme Provet tenant, så kontakt Provet support og spørg, om du kan få denne funktion aktiveret for din integration.
I Provet viser integrationer, der er specifikke for klinikafdeling, en Aktiver- eller Deaktiver-knap i slutningen af rækken. Det gør det muligt for brugere at aktivere eller deaktivere integrationen for den klinikafdeling, de i øjeblikket ser. Når en integration er tilføjet, skal den aktiveres separat for hver klinikafdeling. Klinikafdelingerne, hvor integrationen er aktiveret, vises ved siden af knappen Deaktiver. Hvis en integration ikke understøtter aktivering specifik for klinikafdeling, aktiveres den automatisk på organisationsniveau.
Udgiv en integration
Når du har udviklet og testet din integration og ønsker at udgive den til offentlig brug, skal du kontakte Provet support for at få din integrationsskabelon gjort synlig for alle Provet-instansser. Hvis din integration ikke er specifik for en kunde og er beregnet til at blive brugt i mange Provet-instansser af mange brugere, er der nogle krav, der skal opfyldes, før den kan lanceres. Disse krav skal gøre onboarding af integrationen nemmere og give nødvendig information til Provet support.
Opret en kort video om din integration: hvordan man bruger den, og hvad den gør.
Opret en onboarding-instruktion, der indeholder alle manuelle trin, der er nødvendige for, at Provet-brugeren kan tage din integration i brug. Trinene kan også omfatte de Handlinger, der er nødvendige i dit system.
Se dette eksempel på onboarding-guide. Eksempel-integration bruger en webhook, men din integration kan have behov for en anden konfiguration som for eksempel et brugerdefineret felt osv.
Lever os både videoen og onboarding-guiden, og lad os vide, på hvilke markeder / i hvilke lande din integration skal være synlig.
For at automatisere onboarding og minimere menneskelige fejl anbefaler vi at bruge følgende funktioner til offentlige integrationer, der bruges på tværs af mange Provet tenants:
Tilladelsesskabelon
knyt URL i stedet for e-mail notifikation
Oprettelse af PUSH og brugerdefinerede knapper via API-endpoints (hvis relevant)
Hvis du ikke har disse funktioner i brug, så kontakt Provet support for at konfigurere tilladelsesskabelonen og knyt URL til dig. Hvis du har en specifik årsag til at bruge en notifikations-e-mail, så lad os det vide.
For partnere med lokationsbaseret fakturering er funktionen specifik for klinikafdeling påkrævet. Den skal konfigureres, testes og inkluderes i onboarding-instruktionerne, før integrationen kan gå live.
