Gå til indholdet

Endpoints

Base URLs

Miljø Base URL
Stage https://mgmtauthapi.vconf-stage.dk
Produktion https://mgmtauthapi.vconf.dk

Bekræft den konkrete URL ved adgangsanmodning hos MedCom.

Alle endpoints nedenfor er relative til base URL (fx GET https://mgmtauthapi.vconf-stage.dk/v1/user).

Fælles headers

Header Påkrævet Beskrivelse
Authorization Ja Bearer <access_token> fra Keycloak
X-VDX-AuthorizationId Nej Heltal > 0 — skifter effektiv gruppe til autorisation brugeren ejer

Endpoint-oversigt

Metode Route Formål Detaljer
GET /v1/user Brugerprofil og organisationskontekst GET /v1/user
GET /v1/user/authorizations Management-autorisationer GET /v1/user/authorizations
GET /v1/user/group Flad gruppe for effektiv kontekst GET /v1/user/group
GET /v1/user/group/parents Parent-træ fra rod til effektiv gruppe GET /v1/user/group/parents

Health (uden auth)

Route Formål
/health/live Liveness
/health/ready Readiness
/health/startup Startup

Health-endpoints er undtaget rate limiting.

GET /v1/user

Returnerer brugerprofil og organisationskontekst efter login. Autorisationslisten er ikke inkluderet — hent den separat via /v1/user/authorizations.

Request

Method GET
Path /v1/user
Authorization Påkrævet — Bearer <access_token>
X-VDX-AuthorizationId Valgfri — autorisationskontekst

Eksempel (curl)

curl -s -X GET "https://mgmtauthapi.vconf-stage.dk/v1/user" \
  -H "Authorization: Bearer DIT_ACCESS_TOKEN"

Med autorisationsskift:

curl -s -X GET "https://mgmtauthapi.vconf-stage.dk/v1/user" \
  -H "Authorization: Bearer DIT_ACCESS_TOKEN" \
  -H "X-VDX-AuthorizationId: 42"

Response (200 OK)

Returnerer en UserProfile-struktur:

{
  "email": "bruger@eksempel.dk",
  "firstname": "Anna",
  "lastname": "Hansen",
  "organisationId": "550e8400-e29b-41d4-a716-446655440000",
  "organisationName": "Eksempel Kommune",
  "organisationGroup": 12345,
  "organisationGroupOverride": null,
  "authorizationId": null,
  "isAuthorization": false,
  "hasAvailableAuthorizations": true,
  "roles": "meeting-user,management-admin",
  "sessionId": "abc123-session-id",
  "application": "din-keycloak-klient-id",
  "userType": "external",
  "timestamp": "2026-05-26T10:15:00Z"
}

Fejl

HTTP Årsag
401 Manglende/ugyldig JWT eller manglende claims
403 Lokal bruger inaktiv/slettet, eller ugyldig X-VDX-AuthorizationId
400 Ugyldigt format på X-VDX-AuthorizationId

Se også UserProfile-modellen, Login-flow, Python-eksempel og C#-eksempel.

GET /v1/user/authorizations

Returnerer brugerens management-autorisationer (roller med vdx-admin eller management). Listen filtreres ikke efter X-VDX-AuthorizationId.

Request

Method GET
Path /v1/user/authorizations
Authorization Påkrævet — Bearer <access_token>

Eksempel (curl)

curl -s -X GET "https://mgmtauthapi.vconf-stage.dk/v1/user/authorizations" \
  -H "Authorization: Bearer DIT_ACCESS_TOKEN"

Response (200 OK)

Array af Authorization-objekter:

[
  {
    "id": 42,
    "groupId": 67890,
    "groupName": "Region Nord",
    "role": "management-admin",
    "lastUse": "2026-05-20T14:30:00Z"
  }
]

Brug id som værdi til header X-VDX-AuthorizationId ved autorisationsskift.

Fejl

HTTP Årsag
401 Manglende/ugyldig JWT (kræver mindst dk:medcom:email)

Se også Authorization-modellen, Autorisationsskift, Python-eksempel og C#-eksempel.

GET /v1/user/group

Returnerer én flad gruppe for den effektive kontekst (basis-organisation eller autorisationsskift).

Request

Method GET
Path /v1/user/group
Authorization Påkrævet
X-VDX-AuthorizationId Valgfri — autorisationskontekst

Eksempel (curl)

curl -s -X GET "https://mgmtauthapi.vconf-stage.dk/v1/user/group" \
  -H "Authorization: Bearer DIT_ACCESS_TOKEN" \
  -H "X-VDX-AuthorizationId: 42"

Response (200 OK)

Group-struktur:

{
  "organisationId": "550e8400-e29b-41d4-a716-446655440000",
  "name": "Region Nord",
  "groupId": 67890
}

Fejl

HTTP Årsag
401 Manglende/ugyldig JWT eller claims
403 Inaktiv bruger eller ugyldig autorisation
404 { "message": "Group not found" }

Se også Group-modellen, Python-eksempel og C#-eksempel.

GET /v1/user/group/parents

Returnerer et nested træ fra rodgruppe ned til den effektive gruppe.

Request

Method GET
Path /v1/user/group/parents
Authorization Påkrævet
X-VDX-AuthorizationId Valgfri — autorisationskontekst

Eksempel (curl)

curl -s -X GET "https://mgmtauthapi.vconf-stage.dk/v1/user/group/parents" \
  -H "Authorization: Bearer DIT_ACCESS_TOKEN"

Response (200 OK)

GroupTreeNode-struktur (rekursiv):

{
  "organisationId": "00000000-0000-0000-0000-000000000001",
  "name": "VDX Root",
  "groupId": 1,
  "children": [
    {
      "organisationId": "550e8400-e29b-41d4-a716-446655440000",
      "name": "Eksempel Kommune",
      "groupId": 12345,
      "children": []
    }
  ]
}

Fejl

HTTP Årsag
401 Manglende/ugyldig JWT eller claims
403 Inaktiv bruger eller ugyldig autorisation
404 { "message": "Group not found" }

Se også GroupTreeNode-modellen, Python-eksempel og C#-eksempel.

Se også