Auf dieser Seite wird erläutert, wie Sie die Cloud Healthcare API mit curl
oder Windows PowerShell verwenden, um die folgenden Aufgaben auszuführen:
- Cloud Healthcare API-Dataset erstellen
- Erstellen Sie einen der folgenden Datenspeicher im Dataset:
- DICOM-Speicher (Digital Imaging and Communications in Medicine)
- FHIR-Speicher (Fast Healthcare Interoperability Resources)
- Health Level Seven International Version 2-Speicher (HL7v2)
- Bestimmte Arten von medizinischen Daten im DICOM-, FHIR- oder HL7v2-Speicher speichern und prüfen
Wenn Sie nur mit einem Datenspeichertyp arbeiten möchten, können Sie mit diesem Abschnitt der Kurzanleitung direkt fortfahren, nachdem Sie die Schritte in Vorbereitung und Ein Dataset erstellen ausgeführt haben.
Vorbereitung
- Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
-
Cloud Healthcare API aktivieren.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
-
Cloud Healthcare API aktivieren.
- Installieren und initialisieren Sie Google Cloud CLI.
- Testen Sie die Authentifizierungsumgebung mit dem
gcloud
-Befehlszeilentool. Prüfen Sie, ob der folgende Befehl einen Textstring ohne Fehler ausgibt:gcloud auth application-default print-access-token
Tipp: Benötigen Sie eine Eingabeaufforderung? Dazu steht die Google Cloud Shell zur Verfügung. Cloud Shell ist eine Befehlszeilenumgebung, in der das Cloud SDK bereits enthalten ist und daher nicht installiert werden muss. (Das Cloud SDK ist außerdem auf virtuellen Compute Engine-Maschinen vorinstalliert.)
Dataset erstellen
Datasets enthalten Datenspeicher und Datenspeicher enthalten medizinische Daten. Um die Cloud Healthcare API verwenden zu können, müssen Sie mindestens ein Dataset erstellen.
Erstellen Sie ein Dataset mit der Methode datasets.create
:
curl
curl -X POST \ --data "" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets?datasetId=my-dataset"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Antwort lautet: Die Antwort enthält eine Kennung für einen lang andauernden Vorgang. Lang andauernde Vorgänge werden zurückgegeben, wenn die Ausführung von Methodenaufrufen sehr lange dauern kann.
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID", }
In dieser Ausgabe gilt:
- PROJECT_ID,
us-central1
,my-dataset
sind die Werte, die Sie im Methodenaufruf angegeben haben - OPERATION_ID ist eine Kennung für den lang andauernden Vorgang, von der Cloud Healthcare API bereitgestellt
Mit der Methode operations.get
können Sie den Status des Vorgangs verfolgen:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID"
Dabei gilt:
- PROJECT_ID ist die ID Ihres Google Cloud-Projekts
- OPERATION_ID ist die ID, die vom lang andauernden Vorgang zurückgegeben wurde
Die Ausgabe sieht folgendermaßen aus: Wenn die Antwort "done": true
enthält, ist der Vorgang abgeschlossen. Ist dies nicht der Fall, wird der Vorgang noch ausgeführt. Warten Sie einige Sekunden und rufen Sie dann die Methode operations.get
noch einmal auf.
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.dataset.DatasetService.CreateDataset", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/viewer/CLOUD_LOGGING_URL" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.dataset.Dataset", "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset" } }
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets?datasetId=my-dataset" | Select-Object -Expand Content
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Antwort lautet: Die Antwort enthält eine Kennung für einen lang andauernden Vorgang. Lang andauernde Vorgänge werden zurückgegeben, wenn die Ausführung von Methodenaufrufen sehr lange dauern kann.
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID", }
In dieser Ausgabe gilt:
- PROJECT_ID,
us-central1
,my-dataset
sind die Werte, die Sie im Methodenaufruf angegeben haben - OPERATION_ID ist eine Kennung für den lang andauernden Vorgang, von der Cloud Healthcare API bereitgestellt
Mit der Methode operations.get
können Sie den Status des Vorgangs verfolgen:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID" | Select-Object -Expand Content
Dabei gilt:
- PROJECT_ID ist die ID Ihres Google Cloud-Projekts
- OPERATION_ID ist die ID, die vom lang andauernden Vorgang zurückgegeben wurde
Die Ausgabe sieht folgendermaßen aus: Wenn die Antwort "done": true
enthält, ist der Vorgang abgeschlossen. Ist dies nicht der Fall, wird der Vorgang noch ausgeführt. Warten Sie einige Sekunden und rufen Sie dann die Methode operations.get
noch einmal auf.
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.dataset.DatasetService.CreateDataset", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/viewer/CLOUD_LOGGING_URL" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.dataset.Dataset", "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset" } }
Wählen Sie einen der folgenden Abschnitte aus, um diese Kurzanleitung abzuschließen:
- DICOM-Instanz speichern und ansehen
- FHIR-Ressourcen speichern und ansehen
- HL7v2-Nachricht speichern und ansehen
DICOM-Instanz speichern und ansehen
In diesem Abschnitt wird beschrieben, wie Sie die folgenden Aufgaben ausführen:
- DICOM-Speicher erstellen
- DICOM-Instanz im DICOM-Speicher speichern
- Metadaten der DICOM-Instanz aufrufen
Die Cloud Healthcare API implementiert den DICOMweb-Standard zum Speichern und Abrufen von medizinischen Bilddaten.
DICOM-Speicher erstellen
DICOM-Speicher sind in Datasets vorhanden und enthalten DICOM-Instanzen. Erstellen Sie einen DICOM-Speicher mit der Methode dicomStores.create
:
curl
curl -X POST \ --data "" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores?dicomStoreId=my-dicom-store"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store" }
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores?dicomStoreId=my-dicom-store" | Select-Object -Expand Content
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store" }
DICOM-Instanz speichern
Laden Sie die Beispiel-DICOM-Instanzdatei auf Ihren Rechner herunter. Die Datei enthält eine de-identifizierte Röntgenaufnahme eines Patienten.
curl
curl -O https://cloud.google.com/healthcare-api/docs/resources/dicom_00000001_000.dcm
PowerShell
Invoke-WebRequest -Uri "https://cloud.google.com/healthcare-api/docs/resources/dicom_00000001_000.dcm" -OutFile $pwd/dicom_00000001_000.dcm
Speichern Sie die DICOM-Instanz mit der Methode
dicomStores.storeInstances
. In dieser Kurzanleitung wird davon ausgegangen, dass Sie den Befehl in demselben Verzeichnis ausführen, in das Sie die DICOM-Instanz heruntergeladen haben.curl
curl -X POST \ -H "Content-Type: application/dicom" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ --data-binary @dicom_00000001_000.dcm \ https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/studies
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht im XML-Format so aus:
<NativeDicomModel> <DicomAttribute tag="00081190" vr="UR" keyword="RetrieveURL"> <Value number="1">https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.111396399361969898205364400549799252857604</Value> </DicomAttribute> <DicomAttribute tag="00081199" vr="SQ" keyword="ReferencedSOPSequence"> <Item number="1"> <DicomAttribute tag="00081150" vr="UI" keyword="ReferencedSOPClassUID"> <Value number="1">1.2.840.10008.5.1.4.1.1.7</Value> </DicomAttribute> <DicomAttribute tag="00081155" vr="UI" keyword="ReferencedSOPInstanceUID"> <Value number="1">1.3.6.1.4.1.11129.5.5.153751009835107614666834563294684339746480</Value> </DicomAttribute> <DicomAttribute tag="00081190" vr="UR" keyword="RetrieveURL"> <Value number="1">https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.111396399361969898205364400549799252857604/series/1.3.6.1.4.1.11129.5.5.195628213694300498946760767481291263511724/instances/1.3.6.1.4.1.11129.5.5.153751009835107614666834563294684339746480</Value> </DicomAttribute> </Item> </DicomAttribute> </NativeDicomModel>
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/dicom" ` -InFile dicom_00000001_000.dcm ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/studies" | Select-Object -Expand Content
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht im XML-Format so aus:
<NativeDicomModel> <DicomAttribute tag="00081190" vr="UR" keyword="RetrieveURL"> <Value number="1">https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.111396399361969898205364400549799252857604</Value> </DicomAttribute> <DicomAttribute tag="00081199" vr="SQ" keyword="ReferencedSOPSequence"> <Item number="1"> <DicomAttribute tag="00081150" vr="UI" keyword="ReferencedSOPClassUID"> <Value number="1">1.2.840.10008.5.1.4.1.1.7</Value> </DicomAttribute> <DicomAttribute tag="00081155" vr="UI" keyword="ReferencedSOPInstanceUID"> <Value number="1">1.3.6.1.4.1.11129.5.5.153751009835107614666834563294684339746480</Value> </DicomAttribute> <DicomAttribute tag="00081190" vr="UR" keyword="RetrieveURL"> <Value number="1">https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.111396399361969898205364400549799252857604/series/1.3.6.1.4.1.11129.5.5.195628213694300498946760767481291263511724/instances/1.3.6.1.4.1.11129.5.5.153751009835107614666834563294684339746480</Value> </DicomAttribute> </Item> </DicomAttribute> </NativeDicomModel>
Metadaten der DICOM-Instanz ansehen
Sehen Sie sich die Metadaten für die Instanz mit der Methode dicomStores.searchForInstances
an:
curl
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/instances"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
[ { "00080016": { "vr": "UI", "Value": [ "1.2.840.10008.5.1.4.1.1.7" ] }, "00080018": { "vr": "UI", "Value": [ "1.3.6.1.4.1.11129.5.5.153751009835107614666834563294684339746480" ] }, "00080060": { "vr": "CS", "Value": [ "DX" ] }, "00100020": { "vr": "LO", "Value": [ "1" ] }, "00100040": { "vr": "CS", "Value": [ "M" ] }, "0020000D": { "vr": "UI", "Value": [ "1.3.6.1.4.1.11129.5.5.111396399361969898205364400549799252857604" ] }, "0020000E": { "vr": "UI", "Value": [ "1.3.6.1.4.1.11129.5.5.195628213694300498946760767481291263511724" ] }, "00280010": { "vr": "US", "Value": [ 1024 ] }, "00280011": { "vr": "US", "Value": [ 1024 ] }, "00280100": { "vr": "US", "Value": [ 8 ] } } ]
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-RestMethod ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/instances"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
[ { "00080016": { "vr": "UI", "Value": [ "1.2.840.10008.5.1.4.1.1.7" ] }, "00080018": { "vr": "UI", "Value": [ "1.3.6.1.4.1.11129.5.5.153751009835107614666834563294684339746480" ] }, "00080060": { "vr": "CS", "Value": [ "DX" ] }, "00100020": { "vr": "LO", "Value": [ "1" ] }, "00100040": { "vr": "CS", "Value": [ "M" ] }, "0020000D": { "vr": "UI", "Value": [ "1.3.6.1.4.1.11129.5.5.111396399361969898205364400549799252857604" ] }, "0020000E": { "vr": "UI", "Value": [ "1.3.6.1.4.1.11129.5.5.195628213694300498946760767481291263511724" ] }, "00280010": { "vr": "US", "Value": [ 1024 ] }, "00280011": { "vr": "US", "Value": [ 1024 ] }, "00280100": { "vr": "US", "Value": [ 8 ] } } ]
Nachdem Sie nun eine DICOM-Instanz in der Cloud Healthcare API gespeichert und angezeigt haben, können Sie mit dem Bereinigen fortfahren, um zu vermeiden, dass Ihrem Google Cloud-Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden.
Weitere Informationen zum Arbeiten mit DICOM-Daten finden Sie unter Nächste Schritte.
FHIR-Ressourcen speichern und ansehen
In diesem Abschnitt wird beschrieben, wie Sie die folgenden Aufgaben ausführen:
- Erstellen Sie einen FHIR-Speicher.
- Speichern Sie eine FHIR-Ressource im FHIR-Speicher.
- Sehen Sie sich die Daten zur FHIR-Ressource an.
Die Cloud Healthcare API implementiert den Standard von FHIR-Spezifikation zum Speichern und Zugreifen auf FHIR-Daten.
FHIR-Speicher erstellen
FHIR-Speicher sind in Datasets vorhanden und enthalten FHIR-Ressourcen. Erstellen Sie mit der Methode fhirStores.create
einen FHIR-Speicher:
curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'version': 'R4' }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores?fhirStoreId=my-fhir-store"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store", "version": "R4" }
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'version': 'R4' }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores?fhirStoreId=my-fhir-store" | Select-Object -Expand Content
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store", "version": "R4" }
FHIR-Ressourcen speichern
Laden Sie die JSON-FHIR-Ressourcendatei herunter. Die Datei enthält grundlegende Daten für eine Patientenressource.
curl
curl -O https://cloud.google.com/healthcare-api/docs/resources/Patient.json
PowerShell
Invoke-WebRequest -Uri "https://cloud.google.com/healthcare-api/docs/resources/Patient.json" -OutFile $pwd/Patient.json
Speichern Sie die Patientenressource mit der Methode
fhir.create
. In dieser Kurzanleitung wird davon ausgegangen, dass Sie den Befehl aus demselben Verzeichnis ausführen, in das Sie die Patientenressource heruntergeladen haben.curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/fhir+json; charset=utf-8" \ --data @Patient.json \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "birthDate": "1970-01-01", "gender": "female", "id": "PATIENT_ID", "meta": { "lastUpdated": "LAST_UPDATED", "versionId": "VERSION_ID" }, "name": [ { "family": "Smith", "given": [ "Darcy" ], "use": "official" } ], "resourceType": "Patient" }
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/dicom" ` -InFile Patient.json ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient" | Select-Object -Expand Content
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "birthDate": "1970-01-01", "gender": "female", "id": "PATIENT_ID", "meta": { "lastUpdated": "LAST_UPDATED", "versionId": "VERSION_ID" }, "name": [ { "family": "Smith", "given": [ "Darcy" ], "use": "official" } ], "resourceType": "Patient" }
FHIR-Ressourceninhalte ansehen
Rufen Sie mit der Methode fhir.search
Informationen zur Patientenressource auf. Die folgenden Beispiele zeigen, wie Sie nach allen Patientenressourcen mit dem Nachnamen "Smith" suchen.
curl
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient?family:exact=Smith"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Der Server gibt die Antwort als FHIR-Bundle
im JSON-Format zurück. Bundle.type
ist searchset
und die Suchergebnisse sind Einträge im Array Bundle.entry
. In diesem Beispiel gibt die Anfrage eine einzelne Patientenressource mit den Daten in dieser Ressource zurück:
{ "entry": [ { "fullUrl": "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient/PATIENT_ID", "resource": { "birthDate": "1970-01-01", "gender": "female", "id": "PATIENT_ID", "meta": { "lastUpdated": "LAST_UPDATED", "versionId": "VERSION_ID" }, "name": [ { "family": "Smith", "given": [ "Darcy" ], "use": "official" } ], "resourceType": "Patient" }, "search": { "mode": "match" } } ], "link": [ { "url": "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient/?family%3Aexact=Smith" } ], "resourceType": "Bundle", "total": 1, "type": "searchset" }
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-RestMethod ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/RESOURCE_TYPE?family:exact=Smith" | ConvertTo-Json
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Der Server gibt die Antwort als FHIR-Bundle
im JSON-Format zurück. Bundle.type
ist searchset
und die Suchergebnisse sind Einträge im Array Bundle.entry
. In diesem Beispiel gibt die Anfrage eine einzelne Patientenressource mit den Daten in dieser Ressource zurück:
{ "entry": [ { "fullUrl": "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient/PATIENT_ID", "resource": { "birthDate": "1970-01-01", "gender": "female", "id": "PATIENT_ID", "meta": { "lastUpdated": "LAST_UPDATED", "versionId": "VERSION_ID" }, "name": [ { "family": "Smith", "given": [ "Darcy" ], "use": "official" } ], "resourceType": "Patient" }, "search": { "mode": "match" } } ], "link": [ { "url": "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient/?family%3Aexact=Smith" } ], "resourceType": "Bundle", "total": 1, "type": "searchset" }
Nachdem Sie nun eine FHIR-Ressource in der Cloud Healthcare API gespeichert und angezeigt haben, können Sie mit dem Bereinigen fortfahren, um zu vermeiden, dass Ihrem Google Cloud-Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden.
Weitere Informationen zum Arbeiten mit FHIR-Daten finden Sie unter Nächste Schritte.
HL7v2-Nachricht speichern und ansehen
In diesem Abschnitt wird beschrieben, wie Sie die folgenden Aufgaben ausführen:
- HL7v2-Speicher erstellen.
- HL7v2-Nachricht im HL7v2-Speicher speichern.
- Daten der HL7v2-Nachricht ansehen.
Die HL7v2-Implementierung in der Cloud Healthcare API entspricht dem HL7v2-Standard.
HL7v2-Speicher erstellen
HL7v2-Speicher sind in Datasets vorhanden und enthalten HL7v2-Nachrichten. Erstellen Sie mit der Methode hl7V2Stores.create
einen HL7v2-Speicher:
curl
curl -X POST \ --data "" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores?hl7V2StoreId=my-hl7v2-store"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store" }
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores?hl7V2StoreId=my-hl7v2-store" | Select-Object -Expand Content
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store" }
HL7v2-Nachricht erstellen
Laden Sie die Beispieldatei für eine HL7v2-Nachricht auf Ihren Computer herunter:
curl
curl -O https://cloud.google.com/healthcare-api/docs/resources/hl7v2-sample.json
PowerShell
Invoke-WebRequest -Uri "https://cloud.google.com/healthcare-api/docs/resources/hl7v2-sample.json" -OutFile $pwd/hl7v2-sample.json
Die HL7v2-Nachricht enthält die folgenden grundlegenden Informationen, bei denen sie im Feld
data
der Beispieldatei base-64-codiert ist:MSH|^~\&|A|SEND_FACILITY|A|A|20180101000000||TYPE^A|20180101000000|T|0.0|||AA||00|ASCII EVN|A00|20180101040000 PID||14^111^^^^MRN|11111111^^^^MRN~1111111111^^^^ORGNMBR
Speichern Sie die HL7v2-Nachricht mit der Methode
messages.create
. In dieser Kurzanleitung wird davon ausgegangen, dass Sie den Befehl in demselben Verzeichnis ausführen, in das Sie die HL7v2-Nachrichtendatei heruntergeladen haben.curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data-binary @hl7v2-sample.json \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages/MESSAGE_ID", "data": "TVNIfF5+XCZ8QXxTRU5EX0ZBQ0lMSVRZfEF8QXwyMDE4MDEwMTAwMDAwMHx8VFlQRV5BfDIwMTgwMTAxMDAwMDAwfFR8MC4wfHx8QUF8fDAwfEFTQ0lJDUVWTnxBMDB8MjAxODAxMDEwNDAwMDANUElEfHwxNAExMTFeXl5eTVJOfDExMTExMTExXl5eXk1STn4xMTExMTExMTExXl5eXk9SR05NQlI=", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "14\u0001111", "type": "MRN" }, { "value": "11111111", "type": "MRN" }, { "value": "1111111111", "type": "ORGNMBR" } ] }
In dieser Ausgabe gilt:
- PROJECT_ID,
us-central1
,my-dataset
,my-hl7v2-store
: Die Werte, die Sie im Methodenaufruf angegeben haben - MESSAGE_ID: Eine HL7v2-Nachricht, die von der Cloud Healthcare API bereitgestellt wird
- CREATE_TIME: Ein Zeitstempel, der angibt, wann die Nachricht an die Cloud Healthcare API gesendet wurde
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile hl7v2-sample.json ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages" | Select-Object -Expand Content
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages/MESSAGE_ID", "data": "TVNIfF5+XCZ8QXxTRU5EX0ZBQ0lMSVRZfEF8QXwyMDE4MDEwMTAwMDAwMHx8VFlQRV5BfDIwMTgwMTAxMDAwMDAwfFR8MC4wfHx8QUF8fDAwfEFTQ0lJDUVWTnxBMDB8MjAxODAxMDEwNDAwMDANUElEfHwxNAExMTFeXl5eTVJOfDExMTExMTExXl5eXk1STn4xMTExMTExMTExXl5eXk9SR05NQlI=", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "14\u0001111", "type": "MRN" }, { "value": "11111111", "type": "MRN" }, { "value": "1111111111", "type": "ORGNMBR" } ] }
In dieser Ausgabe gilt:
- PROJECT_ID,
us-central1
,my-dataset
,my-hl7v2-store
: Die Werte, die Sie im Methodenaufruf angegeben haben - MESSAGE_ID: Eine HL7v2-Nachricht, die von der Cloud Healthcare API bereitgestellt wird
- CREATE_TIME: Ein Zeitstempel, der angibt, wann die Nachricht an die Cloud Healthcare API gesendet wurde
- PROJECT_ID,
Inhalt von HL7v2-Nachrichten ansehen
Notieren Sie sich den MESSAGE_ID aus der Antwort, die Sie beim Erstellen der HL7v2-Nachricht erhalten haben. Rufen Sie die Details der HL7v2-Nachricht mit der Methode messages.get
auf.
curl
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages/MESSAGE_ID"
Dabei gilt:
- PROJECT_ID: Die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben
- MESSAGE_ID: Die Nachrichten-ID
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages/MESSAGE_ID", "data": "TVNIfF5+XCZ8QXxTRU5EX0ZBQ0lMSVRZfEF8QXwyMDE4MDEwMTAwMDAwMHx8VFlQRV5BfDIwMTgwMTAxMDAwMDAwfFR8MC4wfHx8QUF8fDAwfEFTQ0lJDUVWTnxBMDB8MjAxODAxMDEwNDAwMDANUElEfHwxNAExMTFeXl5eTVJOfDExMTExMTExXl5eXk1STn4xMTExMTExMTExXl5eXk9SR05NQlI=", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "14\u0001111", "type": "MRN" }, { "value": "11111111", "type": "MRN" }, { "value": "1111111111", "type": "ORGNMBR" } ], "parsedData": { "segments": [ { "segmentId": "MSH", "fields": { "5": "A", "8.1": "TYPE", "6": "20180101000000", "8.2": "A", "3": "SEND_FACILITY", "4": "A", "11": "0.0", "10": "T", "1": "^~\\&", "17": "ASCII", "2": "A", "0": "MSH", "14": "AA", "9": "20180101000000", "16": "00" } }, { "segmentId": "EVN", "fields": { "2": "20180101040000", "0": "EVN", "1": "A00" } }, { "segmentId": "PID", "fields": { "3[0].5": "MRN", "3[1].1": "1111111111", "3[1].5": "ORGNMBR", "0": "PID", "2.1": "14\u0001111", "2.5": "MRN", "3[0].1": "11111111" } } ] } }
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages/MESSAGE_ID" | Select-Object -Expand Content
Dabei gilt:
- PROJECT_ID: Die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben
- MESSAGE_ID: Die Nachrichten-ID
Die Ausgabe sieht so aus:
{ "name": "projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages/MESSAGE_ID", "data": "TVNIfF5+XCZ8QXxTRU5EX0ZBQ0lMSVRZfEF8QXwyMDE4MDEwMTAwMDAwMHx8VFlQRV5BfDIwMTgwMTAxMDAwMDAwfFR8MC4wfHx8QUF8fDAwfEFTQ0lJDUVWTnxBMDB8MjAxODAxMDEwNDAwMDANUElEfHwxNAExMTFeXl5eTVJOfDExMTExMTExXl5eXk1STn4xMTExMTExMTExXl5eXk9SR05NQlI=", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "14\u0001111", "type": "MRN" }, { "value": "11111111", "type": "MRN" }, { "value": "1111111111", "type": "ORGNMBR" } ], "parsedData": { "segments": [ { "segmentId": "MSH", "fields": { "5": "A", "8.1": "TYPE", "6": "20180101000000", "8.2": "A", "3": "SEND_FACILITY", "4": "A", "11": "0.0", "10": "T", "1": "^~\\&", "17": "ASCII", "2": "A", "0": "MSH", "14": "AA", "9": "20180101000000", "16": "00" } }, { "segmentId": "EVN", "fields": { "2": "20180101040000", "0": "EVN", "1": "A00" } }, { "segmentId": "PID", "fields": { "3[0].5": "MRN", "3[1].1": "1111111111", "3[1].5": "ORGNMBR", "0": "PID", "2.1": "14\u0001111", "2.5": "MRN", "3[0].1": "11111111" } } ] } }
Nachdem Sie nun eine HL7v2-Nachricht in der Cloud Healthcare API gespeichert und angezeigt haben, können Sie mit dem Bereinigen fortfahren, um zu vermeiden, dass Ihrem Google Cloud-Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden.
Weitere Informationen zum Arbeiten mit HL7v2-Daten finden Sie unter Nächste Schritte.
Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:
Wenn Sie ein neues Projekt für diese Kurzanleitung erstellt haben, führen Sie die Schritte unter Projekt löschen aus. Andernfalls führen Sie die Schritte unter Dataset löschen aus.
Projekt löschen
- Wechseln Sie in der Console zur Seite Ressourcen verwalten.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.
Dataset löschen
Wenn Sie das in dieser Kurzanleitung erstellte Dataset nicht mehr benötigen, können Sie es löschen. Durch das Löschen eines Datasets werden das Dataset und alle darin enthaltenen FHIR-, HL7v2- oder DICOM-Speicher endgültig gelöscht.
curl
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset"
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{}
PowerShell
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Delete ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset" | Select-Object -Expand Content
Ersetzen Sie PROJECT_ID durch die ID des Google Cloud-Projekts, das Sie unter Vorbereitung erstellt oder ausgewählt haben.
Die Ausgabe sieht so aus:
{}
Wie ist es gelaufen?
Nächste Schritte
In den folgenden Abschnitten finden Sie allgemeine Informationen zur Cloud Healthcare API und erfahren, wie Sie Aufgaben mit der Cloud Console und dem gcloud
-Befehlszeilentool ausführen:
- Überblick über die Konzepte der Cloud Healthcare API
- Cloud Healthcare API mit der Cloud Console verwenden
- Cloud Healthcare API mit dem
gcloud
-Tool verwenden
DICOM
Fahren Sie mit dem DICOM-Leitfaden fort, um Themen wie die folgenden zu lesen:
- DICOM-Speicher verwalten und anpassen
- PACS mit der Cloud Healthcare API verbinden
- DICOMweb-Standard verwenden
- DICOM-Daten mit Cloud Storage importieren und exportieren
Informationen dazu, wie die Cloud Healthcare API den DICOMweb-Standard implementiert, finden Sie in der DICOM-Konformitätserklärung.
FHIR
Fahren Sie mit dem FHIR-Leitfaden fort, um Themen wie die folgenden zu lesen:
- FHIR-Speicher verwalten und anpassen
- FHIR-Ressourcen erstellen und verwalten
- DICOM-Daten mit Cloud Storage importieren und exportieren
Informationen dazu, wie die Cloud Healthcare API den FHIR-Standard implementiert, finden Sie in der FHIR-Konformitätserklärung.
HL7v2
Fahren Sie mit dem HL7v2-Leitfaden fort, um Themen wie die folgenden zu lesen: