Zum Inhalt springen

AdmissionRequestBundle

Ein AdmissionRequestBundle ist ein Bundle nach dem Profil https://belegung-api.median-kliniken.de/fhir/StructureDefinition/AdmissionRequestBundle.

POST /api/v2/fhir/Bundle
Authorization: Bearer <Access-Token>
Content-Type: application/fhir+json
{
"resourceType": "Bundle",
"id": "bundle-2025-002",
"type": "collection",
"meta": {
"profile": ["https://belegung-api.median-kliniken.de/fhir/StructureDefinition/AdmissionRequestBundle"]
},
"identifier": {
"system": "https://belegung-api.median-kliniken.de/fhir/NamingSystem/admission-request",
"value": "AR-2025-000124"
},
"timestamp": "2025-01-15T11:00:00+01:00",
"entry": [ ... ]
}
Status Bedeutung
202 Accepted Das Bundle ist angenommen. Die fachliche Antwort folgt asynchron als Webhook.
400 Bad Request Das Bundle ist ungültig. Der Body ist ein OperationOutcome mit der Ursache.
401 Unauthorized Token fehlt oder ist abgelaufen.

Ein AdmissionRequestBundle enthält folgende Ressourcen:

Ressource Anzahl Zweck
ServiceRequest 1 Die Anfrage selbst
Patient 1 Patientendaten, pseudonymisiert oder vollständig
Coverage 0..1 Kostenträger
Encounter 0..1 Aufenthalt in der Vorklinik
Condition 0..n Diagnosen
Observation 0..n Klinische Messwerte, etwa Gewicht oder Größe
Organization 1..n Vorklinik als Auftraggeber und die Zielkliniken, siehe FHIR-Ressourcen

Beispiel:

{
"resourceType": "Bundle",
"id": "bundle-2025-002",
"type": "collection",
"meta": {
"profile": ["https://belegung-api.median-kliniken.de/fhir/StructureDefinition/AdmissionRequestBundle"]
},
"identifier": {
"system": "https://belegung-api.median-kliniken.de/fhir/NamingSystem/admission-request",
"value": "AR-2025-000124"
},
"timestamp": "2025-01-15T11:00:00+01:00",
"entry": [
{
"fullUrl": "urn:uuid:b2c3d4e5-f6a7-8901-bcde-f12345678901",
"resource": {
"resourceType": "ServiceRequest",
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"identifier": [{
"system": "urn:ietf:rfc:3986",
"value": "https://source-system.example.org/fhir/ServiceRequest/SR-2025-124000"
}],
"status": "active",
"intent": "proposal",
"code": {
"coding": [{
"system": "https://belegung-api.median-kliniken.de/fhir/CodeSystem/bedrequest-service-type",
"code": "inpatient-rehabilitation",
"display": "Vollstationäre Rehabilitation"
}]
},
"performerType": {
"coding": [
{
"system": "https://belegung-api.median-kliniken.de/fhir/CodeSystem/specialty",
"code": "neuro-phase-c",
"display": "Neurologie Phase C"
},
{
"system": "http://fhir.de/CodeSystem/dkgev/Fachabteilungsschluessel-erweitert",
"code": "2891",
"display": "Neurologie Phase C"
}
]
},
"subject": {
"reference": "urn:uuid:d4e5f6a7-b8c9-0123-def1-234567890123"
},
"encounter": {
"reference": "urn:uuid:44444444-5555-6666-7777-888888888888"
},
"requester": {
"reference": "urn:uuid:e5f6a7b8-c9d0-1234-ef12-345678901234"
},
"performer": [
{ "reference": "urn:uuid:f6a7b8c9-d0e1-2345-f123-456789012345" },
{ "reference": "urn:uuid:a7b8c9d0-e1f2-3456-0123-567890123456" }
],
"occurrenceDateTime": "2025-02-15",
"note": [{
"text": "Patient benotigt barrierefreies Zimmer"
}]
}
},
{
"fullUrl": "urn:uuid:d4e5f6a7-b8c9-0123-def1-234567890123",
"resource": {
"resourceType": "Patient",
"id": "d4e5f6a7-b8c9-0123-def1-234567890123",
"identifier": [{
"system": "urn:ietf:rfc:3986",
"value": "https://source-system.example.org/fhir/Patient/PAT-2025-789000"
}],
"name": [{
"family": "Mustermann",
"given": ["Max", "Friedrich"]
}],
"gender": "male",
"birthDate": "1975-03-15",
"address": [{
"line": ["Musterstrasse 123"],
"postalCode": "12345",
"city": "Berlin"
}],
"telecom": [
{
"system": "phone",
"value": "+49 30 12345678",
"use": "home"
},
{
"system": "email",
"value": "max.mustermann@example.de"
}
]
}
},
{
"fullUrl": "urn:uuid:55555555-6666-7777-8888-999999999999",
"resource": {
"resourceType": "Coverage",
"id": "55555555-6666-7777-8888-999999999999",
"status": "active",
"type": {
"coding": [{
"system": "http://fhir.de/CodeSystem/versicherungsart-de-basis",
"code": "PKV",
"display": "Private Krankenversicherung"
}]
},
"beneficiary": {
"reference": "urn:uuid:d4e5f6a7-b8c9-0123-def1-234567890123"
},
"payor": [{
"identifier": {
"system": "http://fhir.de/sid/arge-ik/iknr",
"value": "168140346"
},
"display": "Debeka Krankenversicherung"
}]
}
},
{
"fullUrl": "urn:uuid:44444444-5555-6666-7777-888888888888",
"resource": {
"resourceType": "Encounter",
"id": "44444444-5555-6666-7777-888888888888",
"status": "in-progress",
"class": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "IMP",
"display": "inpatient encounter"
},
"subject": {
"reference": "urn:uuid:d4e5f6a7-b8c9-0123-def1-234567890123"
},
"serviceProvider": {
"reference": "urn:uuid:e5f6a7b8-c9d0-1234-ef12-345678901234"
},
"period": {
"start": "2025-02-15"
}
}
},
{
"fullUrl": "urn:uuid:66666666-7777-8888-9999-aaaaaaaaaaaa",
"resource": {
"resourceType": "Condition",
"id": "66666666-7777-8888-9999-aaaaaaaaaaaa",
"code": {
"coding": [{
"system": "http://fhir.de/CodeSystem/bfarm/icd-10-gm",
"version": "2025",
"code": "G62.9",
"display": "Polyneuropathie, nicht näher bezeichnet"
}]
},
"subject": {
"reference": "urn:uuid:d4e5f6a7-b8c9-0123-def1-234567890123"
},
"encounter": {
"reference": "urn:uuid:44444444-5555-6666-7777-888888888888"
},
"recordedDate": "2025-01-08"
}
},
{
"fullUrl": "urn:uuid:e5f6a7b8-c9d0-1234-ef12-345678901234",
"resource": {
"resourceType": "Organization",
"id": "e5f6a7b8-c9d0-1234-ef12-345678901234",
"identifier": [{
"system": "http://fhir.de/sid/arge-ik/iknr",
"value": "109519005"
}],
"name": "Charite Universitatsmedizin Berlin"
}
},
{
"fullUrl": "urn:uuid:f6a7b8c9-d0e1-2345-f123-456789012345",
"resource": {
"resourceType": "Organization",
"id": "f6a7b8c9-d0e1-2345-f123-456789012345",
"identifier": [{
"system": "http://fhir.de/sid/arge-ik/iknr",
"value": "260950455"
}],
"name": "MEDIAN Klinik Bad Lausick"
}
},
{
"fullUrl": "urn:uuid:a7b8c9d0-e1f2-3456-0123-567890123456",
"resource": {
"resourceType": "Organization",
"id": "a7b8c9d0-e1f2-3456-0123-567890123456",
"identifier": [{
"system": "http://fhir.de/sid/arge-ik/iknr",
"value": "260950466"
}],
"name": "MEDIAN Klinik Flechtingen"
}
}
]
}

Der ServiceRequest ist die Anfrage selbst. Er wird bei jeder Fortschreibung erneut gesendet; Felder wie intent, status und orderDetail ändern sich dabei mit dem Fortschritt der Anfrage.

Feld Anzahl Bedeutung
identifier 1 Globale, stabile URI der Anfrage beim Zuweiser. System urn:ietf:rfc:3986. Über sie erkennt das Portal die Anfrage wieder.
status 1 active oder revoked.
intent 1 proposal für die Kapazitätsanfrage, order ab der Provider-Auswahl.
code 1 Art der Maßnahme, System bedrequest-service-type, siehe Referenz.
performerType 1 Gewünschte Fachrichtung.
subject 1 Verweis auf den Patienten.
requester 1 Verweis auf die Vorklinik.
performer 1..n Verweise auf die angefragten Kliniken.
occurrenceDateTime 0..1 Gewünschtes Aufnahmedatum bei der Zielklinik. Zu unterscheiden vom Aufnahmedatum an der Vorklinik, siehe Encounter.
orderDetail 0..n Provider-Auswahl oder deren Rückzug.
note 0..n Freitext-Hinweise zur Anfrage, etwa besondere Anforderungen an das Zimmer.

Jede Fortschreibung und jede Antwort bezieht sich auf den identifier. Er muss beim Zuweiser deshalb unverändert bleiben.

performerType enthält mindestens ein Coding: den Fachabteilungsschlüssel der Deutschen Krankenhausgesellschaft (dkgev), einen Code aus dem CodeSystem specialty des Portals oder beide. Die Specialty unterscheidet die Fachrichtung feiner, etwa welche Phase einer neurologischen Behandlung gemeint ist. Für die Zuordnung wertet das Portal das Specialty-Coding vorrangig aus, weil es präziser ist; der dkgev-Schlüssel greift, wenn keine Specialty angegeben ist. Widersprechen sich beide, gewinnt die Specialty.

{
"performerType": {
"coding": [
{
"system": "http://fhir.de/CodeSystem/dkgev/Fachabteilungsschluessel-erweitert",
"code": "2891",
"display": "Neurologie Phase C"
},
{
"system": "https://belegung-api.median-kliniken.de/fhir/CodeSystem/specialty",
"code": "neuro-phase-c",
"display": "Neurologie Phase C"
}
]
}
}
Code Bedeutung Fachabteilungscode
addiction Entwöhnungsbehandlungen 8501
angiology Angiologie 3750
cardiology Kardiologie 0300
dermatology Dermatologie 3400
endocrinology Endokrinologie 0600
gastroenterology Gastroenterologie 0700
geriatrics Geriatrie 0200
gynaecology Gynäkologie 2400
internal-medicine Innere Medizin 0100
nephrology Nephrologie 0400
neuro-pediatrics Neuropädiatrie 2810
neuro-phase-b Neurologie Phase B 2852
neuro-phase-c Neurologie Phase C 2891
neuro-phase-d Neurologie Phase D 2800
neurology Neurologie 2800
oncology Onkologie 0500
orthopedics Orthopädie 2300
parents-and-child-rehab Begleitete Kinder 1090
pediatrics Pädiatrie 1000
pneumology Pneumologie 0800
psychosomatic Psychosomatik/Psychotherapie 3100
rheumatology Rheumatologie 0900
urology Urologie 2200

Welche Fachabteilungen eine Klinik anbietet, liefert der Endpunkt Kliniken.

Der Datenstand richtet sich nach der Stufe des Verfahrens.

Stufe Patientendaten
intent: proposal pseudonymisiert oder vollständig
intent: order vollständig

Pseudonymisiert heißt: Der Name wird über die FHIR-Erweiterung für fehlende Angaben ausgelassen, während Geburtsdatum, Geschlecht und Ort erhalten bleiben. Diese Angaben genügen der Klinik, um Kapazität zu beurteilen. Das Geburtsdatum kann dabei auf den 1. Januar des Jahres gesetzt werden, um zusätzlich zu pseudonymisieren.

{
"resourceType": "Patient",
"identifier": [{
"system": "urn:ietf:rfc:3986",
"value": "https://auftraggeber.example.org/fhir/Patient/pat-456"
}],
"name": [{
"_family": {
"extension": [{
"url": "http://hl7.org/fhir/StructureDefinition/iso21090-nullFlavor",
"valueCode": "MSK"
}]
}
}],
"birthDate": "1975-06-30",
"gender": "male",
"address": [{ "postalCode": "12345", "city": "Berlin" }]
}

Angaben zum Kostenträger.

Feld Anzahl Bedeutung
status 1 active
type 1 Versicherungsart, System http://fhir.de/CodeSystem/versicherungsart-de-basis. Gängige Werte sind GKV, PKV, BG und SEL; die vollständige Liste pflegt fhir.de als Teil des deutschen FHIR-Basisprofils.
beneficiary 1 Verweis auf den Patienten
payor 1..n Kostenträger mit IK-Nummer

Der laufende Aufenthalt in der Vorklinik. Optional.

Feld Bedeutung
status in-progress oder finished
class Art des Aufenthalts, System http://terminology.hl7.org/CodeSystem/v3-ActCode. Im Regelfall IMP (stationär).
subject Verweis auf den Patienten
serviceProvider Verweis auf die Vorklinik
period.start Aufnahmedatum in der Vorklinik. Das gewünschte Aufnahmedatum bei der Zielklinik steht stattdessen in ServiceRequest.occurrenceDateTime.

Diagnosen, kodiert nach ICD-10-GM (System http://fhir.de/CodeSystem/bfarm/icd-10-gm). Ein Bundle kann mehrere Condition-Ressourcen enthalten. Optional. Ein Beispiel steht im Bundle oben.

Klinische Messwerte zum Patienten, etwa Gewicht oder Größe. Ein Bundle kann mehrere Observation-Ressourcen enthalten. Optional.

Feld Bedeutung
code LOINC-Code des Messwerts, System http://loinc.org
subject Verweis auf den Patienten
valueQuantity Messwert mit Einheit nach UCUM

Gewicht (LOINC 29463-7) und Größe (LOINC 8302-2):

[
{
"resourceType": "Observation",
"status": "final",
"code": {
"coding": [{
"system": "http://loinc.org",
"code": "29463-7",
"display": "Body weight"
}]
},
"subject": { "reference": "urn:uuid:d4e5f6a7-b8c9-0123-def1-234567890123" },
"valueQuantity": { "value": 82, "unit": "kg", "system": "http://unitsofmeasure.org", "code": "kg" }
},
{
"resourceType": "Observation",
"status": "final",
"code": {
"coding": [{
"system": "http://loinc.org",
"code": "8302-2",
"display": "Body height"
}]
},
"subject": { "reference": "urn:uuid:d4e5f6a7-b8c9-0123-def1-234567890123" },
"valueQuantity": { "value": 178, "unit": "cm", "system": "http://unitsofmeasure.org", "code": "cm" }
}
]

valueQuantity.unit gehört immer mit dazu, damit der Messwert eindeutig bleibt.

Die Organizations in requester und performer sind die Vorklinik als Auftraggeber und die angefragten Kliniken, siehe FHIR-Ressourcen.

Eine Performer-Organization kann zusätzlich einen Deep-Link enthalten, unter dem System .../fhir/sid/performer-deep-link. Der Zuweiser hinterlegt hier optional einen Verweis auf seine eigene Sicht der Anfrage, damit die Klinik von dort aus dorthin zurückspringen kann.

Das Portal führt keine eigene Anfrage-ID ein. Es erkennt Anfragen am ServiceRequest.identifier mit dem System urn:ietf:rfc:3986 wieder:

  • Unbekannter Identifier: Es entsteht eine neue Anfrage.
  • Bekannter Identifier: Die bestehende Anfrage wird fortgeschrieben.

Der Bundle.identifier dient nur der Nachvollziehbarkeit einzelner Übertragungen und spielt für diese Zuordnung keine Rolle.

Hat eine Klinik zugesagt und entscheidet sich der Zuweiser für sie, sendet er denselben ServiceRequest erneut, diesmal mit intent: order und einem orderDetail:

{
"status": "active",
"intent": "order",
"orderDetail": [{
"coding": [{
"system": "https://belegung-api.median-kliniken.de/fhir/CodeSystem/order-detail-type",
"code": "selected-provider"
}]
}],
"performer": [{ "reference": "urn:uuid:..." }]
}

performer enthält dann nur noch die ausgewählte Klinik. Ab intent: order sind vollständige Patientendaten erforderlich.

Code Bedeutung
selected-provider Auswahl einer Klinik
selected-provider-cancelled Rückzug der Auswahl

Ein ServiceRequest mit status: revoked zieht die gesamte Anfrage zurück. Der Status hat dabei Vorrang: Ein Bundle mit status: revoked wird immer als Storno der Anfrage verstanden.

Die Beispieldateien decken die Fälle einzeln ab: neue Anfrage pseudonymisiert und mit vollen Daten, Provider-Auswahl, Rückzug der Auswahl und Storno. Siehe Beispiele.