Gå til indholdet

Endpoints

Alle endpoints er v1 under base path /devicereg. De fleste kræver Keycloak JWT; Device Login har to public endpoints.

Base URLs

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

Eksempel: GET https://videoapi.vconf-stage.dk/devicereg/v1/devices

Fælles headers

Header Påkrævet Beskrivelse
Authorization Ved OAuth2-endpoints Bearer <access_token> fra Keycloak
Content-Type Ved POST/PUT application/json

Device Admin

Administration af enheder, meeting/message-kø og creation tokens. Kræver typisk meeting-admin.

Endpoint-oversigt

Metode Route Formål Rolle
GET /v1/devices List enheder meeting-admin, meeting-user, meeting-planner
GET /v1/device/{id} Hent enhed meeting-admin
POST /v1/device Opret enhed meeting-admin
PUT /v1/device/{id} Opdater enhed meeting-admin
DELETE /v1/device/{id} Slet enhed meeting-admin
GET /v1/device/{id}/password Generer nyt password meeting-admin
POST /v1/meetings Push meeting til enhed meeting-admin
DELETE /v1/meetings/{id} Ryd meeting-kø meeting-admin
POST /v1/messages Push besked til enhed meeting-admin
DELETE /v1/messages/{id} Ryd besked-kø meeting-admin
POST /v1/device-creation-token Opret creation token meeting-admin
GET /v1/device-creation-token/{organisation_code} Hent creation token meeting-admin

GET /v1/devices

Hent alle enheder fra brugerens organisationskontekst.

Parameter Type Beskrivelse
organisation_code query (valgfri) Filtrer på organisationskode — default er brugerens organisation
include_suborganisations query (boolean, valgfri) Inkluder enheder fra underorganisationer

Response (200): Array af deviceResponse

Fejl: 401, 403, 502


GET /v1/device/{id}

Hent enhed med angivet UUID. Kun enheder i egen organisation eller underorganisationer.

Parameter Type Beskrivelse
id uuid (path) Enheds-UUID

Response (200): deviceResponse

Fejl: 401, 403, 404, 502


POST /v1/device

Opret ny enhed i egen organisation eller underorganisation.

Request body: deviceRequest

Response (200): createDeviceResponse — inkluderer keycloak_password

Fejl: 400, 401, 403, 409, 500, 502


PUT /v1/device/{id}

Opdater eksisterende enhed.

Parameter Type Beskrivelse
id uuid (path) Enheds-UUID

Request body: deviceRequest

Response (200): deviceResponse

Fejl: 400, 401, 403, 404, 409, 500, 502


DELETE /v1/device/{id}

Slet enhed. Kun enheder i egen organisation eller underorganisationer.

Parameter Type Beskrivelse
id uuid (path) Enheds-UUID

Response (204): No content

Fejl: 401, 403, 404, 500, 502


GET /v1/device/{id}/password

Generer nyt Keycloak-password for enhed.

Parameter Type Beskrivelse
id uuid (path) Enheds-UUID

Response (200): passwordOutput

Fejl: 401, 403, 404, 502


POST /v1/meetings

Tilføj meeting til en enheds meeting-kø.

Request body: createMeeting

Response (204): No content

Fejl: 400, 401, 403, 404


DELETE /v1/meetings/{id}

Ryd meeting-kø for enhed.

Parameter Type Beskrivelse
id uuid (path) Enheds-UUID

Response (204): No content

Fejl: 401, 403, 404


POST /v1/messages

Tilføj besked til en enheds message-kø.

Request body: createMessage

Response (204): No content

Fejl: 400, 401, 403, 404


DELETE /v1/messages/{id}

Ryd message-kø for enhed.

Parameter Type Beskrivelse
id uuid (path) Enheds-UUID

Response (204): No content

Fejl: 401, 403, 404


POST /v1/device-creation-token

Opret token til auto-oprettelse af enheder i en organisation.

Request body: deviceCreationTokenRequest

Response (200): deviceCreationToken

Fejl: 400, 401, 403, 409, 500


GET /v1/device-creation-token/{organisation_code}

Hent eksisterende creation token for organisation.

Parameter Type Beskrivelse
organisation_code string (path) Organisationskode

Response (200): deviceCreationToken

Fejl: 400, 401, 403, 404


Device Comm

Enhedskommunikation — enheden poller for ventende møder og beskeder. Kræver device-token med meeting-user eller meeting-planner.

Endpoint-oversigt

Metode Route Formål Rolle
GET /v1/heartbeat Tjek om enhed eksisterer Device token
GET /v1/meeting Hent ældste ubehandlede meeting meeting-user, meeting-planner
GET /v1/message Hent ældste ubehandlede besked meeting-user, meeting-planner

GET /v1/heartbeat

Verificer at enheden fra JWT-token eksisterer og er reachable.

Response (200): Ok (tom body)

Fejl: 401, 403, 404, 502


GET /v1/meeting

Hent ældste ubehandlede meeting for enheden identificeret i JWT.

Response (200): meetingResponse

Fejl: 401, 403, 404


GET /v1/message

Hent ældste ubehandlede besked for enheden identificeret i JWT.

Response (200): messageResponse

Fejl: 401, 403, 404


Device Login

Login og auto-oprettelse af enheder.

Endpoint-oversigt

Metode Route Formål Auth
GET /v1/one-click/{id} Generer one-click login-link OAuth2, meeting-admin
GET /v1/login/{id} Hent access token via login-id Public
POST /v1/device-login Opret enhed og hent token Public

GET /v1/one-click/{id}

Generer login-link til enhed.

Parameter Type Beskrivelse
id uuid (path) Enheds-UUID
client-id query (påkrævet) Keycloak client-id til token-hentning

Response (200): oneClickResponse

Fejl: 401, 403, 404, 409, 500


GET /v1/login/{id}

Hent access token for enhed via one-click login-id. Public endpoint — ingen Bearer token.

Parameter Type Beskrivelse
id string (path) Unikt login-id fra one-click link

Response (200): accessToken

Fejl: 404, 500, 502


POST /v1/device-login

Opret simpel enhed og hent access token via creation token. Public endpoint — ingen Bearer token.

Request body: deviceCreationTokenLoginRequest

Response (200): accessToken

Fejl: 400, 403, 404, 409, 500, 502


Fejlkoder

HTTP Betydning
400 Manglende/ugyldigt input, valideringsfejl
401 Ugyldig/udløbet token, manglende brugerkontekst
403 Enhed tilhører ikke brugerens organisation
404 Enhed/møde/besked/token ikke fundet
409 Konflikt (duplikat short_id, navn eller creation token)
500 Intern serverfejl (database)
502 Bad Gateway (Keycloak-fejl)

Fejlrespons: detailedError med detailed_error_code (10–27).

Anbefalet klient-adfærd

Status Handling
400 Vis valideringsfejl — tjek påkrævede felter
401 Forny token via Keycloak
403 Tjek organisationsgrænser
404 Tjek enheds-UUID og om enheden er oprettet
409 Prøv igen (duplikat short_id/login-id) eller brug andet navn
502 Log og kontakt support — Keycloak-synkroniseringsfejl

Se også

Ændringshistorik

Dato Ændring
2026-06-27 Første endpoint-reference for VDX Device Registration Service