Modeller
Alle modeller bruger camelCase JSON. Timestamps er ISO 8601 UTC (fx 2024-06-10T10:34:41Z).
Model-oversigt
deviceRequest
Request body til POST /v1/device og PUT /v1/device/{id}.
| Felt |
Type |
Påkrævet |
Beskrivelse |
name |
string |
Ja |
Enhedens navn |
description |
string |
Nej |
Beskrivelse |
location |
string |
Nej |
Placering (max 250 tegn) |
organisation_code |
string |
Ja |
Organisationskode |
enabled |
boolean |
Ja |
Om enheden er aktiveret i Keycloak |
role |
deviceRole |
Ja |
Enhedsrolle |
audiences |
string[] |
Nej |
Yderligere API'er enheden kan tilgå |
JSON-eksempel
{
"name": "Patientværelse 101",
"description": "SIP-endpoint i afdeling A",
"location": "Bygning 1, etage 2",
"organisation_code": "device_org",
"enabled": true,
"role": "MEETING_USER",
"audiences": []
}
deviceResponse
Enhedsdata returneret ved GET og PUT.
| Felt |
Type |
Beskrivelse |
id |
uuid |
Enheds-UUID |
short_id |
string |
Kort ID — også Keycloak username |
name |
string |
Enhedens navn |
description |
string |
Beskrivelse |
location |
string |
Placering |
organisation_code |
string |
Organisationskode |
enabled |
boolean |
Aktiveret i Keycloak |
created_by |
string |
Oprettet af (email) |
created_timestamp |
datetime |
Oprettelsestidspunkt |
updated_by |
string |
Sidst opdateret af |
updated_timestamp |
datetime |
Sidste opdatering |
last_active_timestamp |
datetime |
Sidste aktivitet |
keycloak_id |
uuid |
Keycloak bruger-ID |
role |
deviceRole |
Enhedsrolle |
audiences |
string[] |
Yderligere API-adgange |
JSON-eksempel
{
"id": "46b46a1e-a4d3-4387-87ee-a67dcaa222cb",
"short_id": "asdfghjk",
"name": "Patientværelse 101",
"description": "SIP-endpoint i afdeling A",
"location": "Bygning 1, etage 2",
"organisation_code": "device_org",
"enabled": true,
"created_by": "admin@example.com",
"created_timestamp": "2024-06-10T10:34:41Z",
"updated_by": "admin@example.com",
"updated_timestamp": "2024-06-10T10:34:41Z",
"keycloak_id": "46b46a1e-a4d3-4387-87ee-a67dcaa222cb",
"role": "MEETING_USER",
"audiences": []
}
createDeviceResponse
Udvidet deviceResponse med password ved oprettelse.
| Felt |
Type |
Beskrivelse |
| (alle deviceResponse-felter) |
|
|
keycloak_password |
string |
Keycloak-password — returneres kun ved oprettelse |
passwordOutput
Respons fra GET /v1/device/{id}/password.
| Felt |
Type |
Beskrivelse |
id |
uuid |
Enheds-UUID |
short_id |
string |
Kort ID |
name |
string |
Enhedens navn |
keycloak_id |
uuid |
Keycloak bruger-ID |
password |
string |
Nyt Keycloak-password |
createMeeting
Request body til POST /v1/meetings.
| Felt |
Type |
Påkrævet |
Beskrivelse |
device_id |
uuid |
Ja |
Mål-enheds UUID |
uri |
string |
Ja |
Møde-URI uden domæne (max 100 tegn) |
pin |
integer |
Ja |
Møde-PIN (1000–999999999) |
meeting_type |
string |
Ja |
Mødetype (max 36 tegn, fx oneway-nosound) |
meeting_host |
string |
Nej |
Vært (max 100 tegn) |
meeting_description |
string |
Nej |
Beskrivelse (max 5000 tegn) |
JSON-eksempel
{
"device_id": "46b46a1e-a4d3-4387-87ee-a67dcaa222cb",
"uri": "574893",
"pin": 12345,
"meeting_type": "oneway-nosound",
"meeting_host": "Læge Hansen",
"meeting_description": "Konsultation"
}
meetingResponse
Respons fra GET /v1/meeting.
| Felt |
Type |
Beskrivelse |
status |
string |
MEETING_FOUND eller NO_WAITING_MEETINGS |
meeting |
meeting |
Meeting-detaljer (kun ved MEETING_FOUND) |
meeting
Meeting-detaljer i poll-respons.
| Felt |
Type |
Beskrivelse |
uri |
string |
Møde-URI uden domæne |
pin |
integer |
Møde-PIN |
meeting_type |
string |
Mødetype |
meeting_host |
string |
Vært |
meeting_description |
string |
Beskrivelse |
createMessage
Request body til POST /v1/messages.
| Felt |
Type |
Påkrævet |
Beskrivelse |
device_id |
uuid |
Ja |
Mål-enheds UUID |
key |
string |
Ja |
Beskedtype/nøgle |
value |
object |
Ja |
Beskedindhold (vilkårligt JSON-objekt) |
JSON-eksempel
{
"device_id": "46b46a1e-a4d3-4387-87ee-a67dcaa222cb",
"key": "notification",
"value": { "text": "Du har et ventende møde" }
}
messageResponse
Respons fra GET /v1/message.
| Felt |
Type |
Beskrivelse |
status |
string |
MESSAGE_FOUND eller NO_WAITING_MESSAGES |
message |
message |
Besked-detaljer (kun ved MESSAGE_FOUND) |
message
Besked-detaljer i poll-respons.
| Felt |
Type |
Beskrivelse |
key |
string |
Beskedtype/nøgle |
value |
object |
Beskedindhold |
oneClickResponse
Respons fra GET /v1/one-click/{id}.
| Felt |
Type |
Beskrivelse |
link |
uri |
One-click login-link til enheden |
accessToken
Keycloak token-respons fra login-endpoints.
| Felt |
Type |
Beskrivelse |
access_token |
string |
JWT access token |
expires_in |
integer |
Token-levetid (sekunder) |
refresh_expires_in |
integer |
Refresh token-levetid |
refresh_token |
string |
Refresh token |
token_type |
string |
Typisk Bearer |
not-before-policy |
integer |
Not-before policy |
session_state |
string |
Session-ID |
scope |
string |
Token scope |
deviceRole
Enhedsrolle tildelt i Keycloak.
| Værdi |
Beskrivelse |
MEETING_USER |
Normal enhedsbruger |
MEETING_PLANNER |
Planlægger-enhed |
deviceCreationTokenRequest
Request body til POST /v1/device-creation-token.
| Felt |
Type |
Påkrævet |
Beskrivelse |
organisation_code |
string |
Ja |
Organisationskode for enheder |
client_id |
string |
Ja |
Keycloak client-id til token-hentning |
deviceCreationToken
Creation token til auto-oprettelse af enheder.
| Felt |
Type |
Beskrivelse |
deviceCreationToken |
uuid |
Token til brug i POST /v1/device-login |
deviceCreationTokenLoginRequest
Request body til POST /v1/device-login.
| Felt |
Type |
Påkrævet |
Beskrivelse |
deviceCreationToken |
uuid |
Ja |
Creation token |
name |
string |
Nej |
Enhedsnavn — default er short_id |
organisation_code |
string |
Nej |
Organisation — default er token-ejerens org |
detailedError
Udvidet fejlrespons (arver basicError).
| Felt |
Type |
Beskrivelse |
detailed_error |
string |
Detaljeret fejlbeskrivelse |
detailed_error_code |
string |
Fejlkode (se tabel) |
Fejlkoder (detailed_error_code)
| Kode |
Beskrivelse |
10 |
Keycloak-fejl — enhed ikke oprettet |
11 |
Keycloak-fejl — enhed ikke opdateret |
12 |
Keycloak-fejl — enhed ikke slettet |
13 |
Keycloak-fejl — password ikke opdateret |
14 |
Database — ikke fundet |
15 |
Database — ikke oprettet |
16 |
Database — ikke opdateret |
17 |
Database — ikke slettet |
18 |
Validering — org-kode ikke i parent-træ |
19 |
Validering — brugerkontekst ikke hentet |
20 |
Duplikat — short_id eller login-id allerede i brug |
21 |
Duplikat — database-værdier findes allerede |
22 |
Validering — Keycloak-bruger matcher ikke enhed |
23 |
Keycloak — access token ikke hentet |
24 |
Validering — input-validering fejlede |
25 |
Keycloak — ugyldig rolle-attribut |
26 |
Keycloak — enhed/attributter ikke fundet |
27 |
Keycloak — device API access token fejlede |
basicError
| Felt |
Type |
Beskrivelse |
timestamp |
datetime |
Fejltidspunkt |
status |
integer |
HTTP-statuskode |
error |
string |
Fejlbesked |
path |
string |
Request path |
Se også
Ændringshistorik
| Dato |
Ændring |
| 2026-06-27 |
Første model-reference for VDX Device Registration Service |