En esta página, se explica cómo crear, editar, ver y borrar almacenes de recursos de interoperabilidad de atención médica rápida (FHIR). La versión FHIR de un almacén FHIR puede ser DSTU2, STU3 o R4.
Crea un almacén de FHIR
Antes de crear un almacén de FHIR, debes crear un conjunto de datos.
En los siguientes ejemplos, se muestra cómo crear un almacén de FHIR con el método projects.locations.datasets.fhirStores.create
.
Console
Para crear un almacén de FHIR, haz lo siguiente:
- En Cloud Console, ve a la página Conjuntos de datos.
- Abre el conjunto de datos en el que deseas crear un almacén de FHIR.
- Haz clic en Crear almacén de datos.
- Ingresa un nombre de tu elección que sea único en tu conjunto de datos. Si el nombre no es único, la creación del almacén de FHIR falla.
- Selecciona FHIR como el tipo de almacén de datos.
- Elige la versión de FHIR del almacén de FHIR, una de DSTU2, STU3 o R4.
-
Si deseas configurar un tema de Pub/Sub para el almacén de FHIR, escribe el nombre del tema.
Cuando especifiques un tema de Pub/Sub, ingresa el URI calificado para el tema, como se muestra en el siguiente ejemplo:
projects/PROJECT_ID/topics/PUBSUB_TOPIC
- Haga clic en Crear.
El nuevo almacén de FHIR aparece en la lista.
gcloud
Para crear un almacén de FHIR en el conjunto de datos, ejecuta el comando gcloud healthcare fhir-stores create
.
- El ID del almacén de FHIR debe ser único en el conjunto de datos. Puede ser cualquier string de Unicode de 1 a 256 caracteres que conste de números, letras, guiones bajos, guiones y puntos.
- Para configurar la versión de FHIR, especifica el argumento opcional
--version
. Esto define la versión de FHIR comoDSTU2
,STU3
oR4
. Si no especificas este argumento, la versión se configura de forma predeterminada enSTU3
.
Para notificar a un tema de Pub/Sub de cambios en el almacén de FHIR, especifica un nombre de tema de Pub/Sub existente con el argumento
Cuando especifiques un tema de Pub/Sub, ingresa el URI calificado para el tema, como se muestra en el siguiente ejemplo:--pubsub-topic
.projects/PROJECT_ID/topics/PUBSUB_TOPIC
En el siguiente ejemplo, se muestra cómo crear un almacén de FHIR.
gcloud healthcare fhir-stores create FHIR_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ --version=FHIR_STORE_VERSION \ [--pubsub-topic=projects/PROJECT_ID/topics/PUBSUB_TOPIC]
Si la solicitud se realiza correctamente, el símbolo del sistema muestra lo siguiente:
Created fhirStore [FHIR_STORE_ID].
API
Para crear un almacén de FHIR, usa el método projects.locations.datasets.fhirStores.create
.
curl
Para crear un almacén de FHIR, realiza una solicitud POST
y especifica la siguiente información:
- El nombre del conjunto de datos superior
- Un nombre para el almacén de FHIR. El nombre del almacén de FHIR debe ser único en su conjunto de datos superior. Puede ser cualquier string de Unicode de 1 a 256 caracteres que conste de números, letras, guiones bajos, guiones y puntos.
- La versión de FHIR del almacén de FHIR:
DSTU2
,STU3
oR4
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud POST
mediante curl
.
De manera opcional, puedes configurar un tema de Pub/Sub existente al que la API de Cloud Healthcare envía notificaciones de los cambios del almacén de FHIR. Consulta Edita un almacén de FHIR para obtener información sobre cómo configurar el tema de Pub/Sub.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'version': 'FHIR_STORE_VERSION' }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores?fhirStoreId=FHIR_STORE_ID"
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "version": "FHIR_STORE_VERSION" }
PowerShell
Para crear un almacén de FHIR, realiza una solicitud POST
y especifica la siguiente información:
- El nombre del conjunto de datos superior
- Un nombre para el almacén de FHIR. El nombre del almacén de FHIR debe ser único en su conjunto de datos superior. Puede ser cualquier string de Unicode de 1 a 256 caracteres que conste de números, letras, guiones bajos, guiones y puntos.
- La versión de FHIR del almacén de FHIR:
DSTU2
,STU3
oR4
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud POST
mediante Windows PowerShell.
De manera opcional, puedes configurar un tema de Pub/Sub existente al que la API de Cloud Healthcare envía notificaciones de los cambios del almacén de FHIR. Consulta Edita un almacén de FHIR para obtener información sobre cómo configurar el tema de Pub/Sub.
$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': 'FHIR_STORE_VERSION' }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores?fhirStoreId=FHIR_STORE_ID" | Select-Object -Expand Content
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "version": "FHIR_STORE_VERSION" }
Go
Java
Node.js
Python
Edita un almacén de FHIR
En los siguientes ejemplos, se muestra cómo realizar los siguientes cambios en un almacén de FHIR:
- Edita el tema Pub/Sub al que la API de Cloud Healthcare envía notificaciones de los cambios del almacén de FHIR.
- Edita las etiquetas. Las etiquetas son pares clave-valor que te ayudan a organizar tus recursos de Google Cloud.
projects/PROJECT_ID/topics/PUBSUB_TOPICPara que las notificaciones funcionen, debes otorgar permisos adicionales a la cuenta de servicio del Agente de servicios de Cloud Healthcare. Para obtener más información, consulta Permisos de Pub/Sub de DICOM, FHIR y HL7v2.
Console
Cloud Console no admite la edición de el tema o las etiquetas de Pub/Sub. En su lugar, usa curl
, Windows PowerShell o tu lenguaje preferido.
gcloud
Para actualizar la tienda de FHIR, ejecuta el comando gcloud healthcare fhir-stores update
.
En el siguiente ejemplo, se demuestra cómo actualizar el tema de Pub/Sub para el almacén de FHIR. La herramienta de gcloud
no admite la edición de etiquetas.
gcloud healthcare fhir-stores update FHIR_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ --pubsub-topic=projects/PROJECT_ID/topics/PUBSUB_TOPIC
Si la solicitud es exitosa, el símbolo del sistema muestra los detalles del almacén de FHIR, incluido el nuevo nombre del tema:
Updated fhirStore [FHIR_STORE_ID]. name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhir-stores/FHIR_STORE_ID notificationConfig: pubsubTopic: projects/PROJECT_ID/topics/PUBSUB_TOPIC version: FHIR_STORE_VERSION
API
Para editar un almacén de FHIR, usa el método projects.locations.datasets.fhirStores.patch
.
curl
Para editar un almacén de FHIR, realiza una solicitud PATCH
y especifica la siguiente información:
- El nombre del conjunto de datos superior
- El nombre del almacén FHIR
- Los metadatos que deseas actualizar
- Una máscara de actualización
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud PATCH
mediante curl
.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'notificationConfig': { 'pubsubTopic': 'projects/PROJECT_ID/topics/PUBSUB_TOPIC' }, 'labels': { 'KEY1':'VALUE1','KEY2':'VALUE2' } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=notificationConfig,labels"
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "notificationConfig": { "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC" }, 'labels': { 'KEY1':'VALUE1','KEY2':'VALUE2' } 'version': FHIR_STORE_VERSION }
PowerShell
Para editar un almacén de FHIR, realiza una solicitud PATCH
y especifica la siguiente información:
- El nombre del conjunto de datos superior
- El nombre del almacén FHIR
- Los metadatos que deseas actualizar
- Una máscara de actualización
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud PATCH
mediante Windows PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Patch ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'notificationConfig': { 'pubsubTopic': 'projects/PROJECT_ID/topics/PUBSUB_TOPIC' }, 'labels': { 'KEY1':'VALUE1','KEY2':'VALUE2' } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=notificationConfig,labels" | Select-Object -Expand Content
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "notificationConfig": { "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC" }, 'labels': { 'KEY1':'VALUE1','KEY2':'VALUE2' } 'version': FHIR_STORE_VERSION }
Go
Java
Node.js
Python
Obtén detalles del almacén de FHIR
En los siguientes ejemplos, se muestra cómo obtener detalles sobre un almacén FHIR.
Console
Para ver los detalles de un almacén de FHIR, debes hacer lo siguiente:
- En Cloud Console, ve a la página Conjuntos de datos.
- Haz clic en el ID del conjunto de datos que contiene el almacén de FHIR.
- Haz clic en el nombre del almacén de FHIR.
gcloud
Para obtener más detalles sobre un almacén de FHIR, ejecuta el comando de gcloud healthcare fhir-stores describe
.
En el siguiente ejemplo, se muestra cómo obtener detalles sobre un almacén de FHIR.
gcloud healthcare fhir-stores describe FHIR_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
Si la solicitud es exitosa, el símbolo del sistema muestra los detalles del almacén de FHIR:
name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhir-stores/FHIR_STORE_ID version: FHIR_STORE_VERSION
API
Para obtener más detalles sobre un almacén de FHIR, usa el método projects.locations.datasets.fhirStores.get
.
curl
Para obtener detalles sobre un almacén de FHIR, realiza una solicitud GET
y especifica la siguiente información:
- El nombre del conjunto de datos superior
- El nombre del almacén FHIR
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud GET
mediante curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID"
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "version": FHIR_STORE_VERSION }
Si configuraste algún campo en el recurso FhirStore
, también aparecerá en la respuesta.
PowerShell
Para obtener detalles sobre un almacén de FHIR, realiza una solicitud GET
y especifica la siguiente información:
* El nombre del conjunto de datos superior
* El nombre del almacén de FHIR
* Un token de acceso
En el siguiente ejemplo, se muestra una solicitud GET
mediante Windows 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/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID" | Select-Object -Expand Content
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "version": FHIR_STORE_VERSION }
Si configuraste algún campo en el recurso FhirStore
, también aparecerá en la respuesta.
Go
Java
Node.js
Python
Enumera los almacenes de FHIR en un conjunto de datos
En los siguientes ejemplos, se muestra cómo enumerar los almacenes de FHIR en un conjunto de datos.
Console
Para ver los almacenes de datos en un conjunto de datos, haz lo siguiente:
- En Cloud Console, ve a la página Conjuntos de datos.
- Haz clic en el ID del conjunto de datos cuyos datos deseas ver.
gcloud
Para enumerar los almacenes de FHIR en un conjunto de datos, ejecuta el comando gcloud healthcare fhir-stores list
.
gcloud healthcare fhir-stores list --dataset=DATASET_ID
Si la solicitud tiene éxito, el símbolo del sistema enumera los almacenes de FHIR:
ID LOCATION TOPIC FHIR_STORE_ID LOCATION projects/PROJECT_ID/topics/PUBSUB_TOPIC
API
Para enumerar los almacenes de FHIR en un conjunto de datos, usa el método projects.locations.datasets.fhirStores.list
.
curl
Para enumerar los almacenes de FHIR en un conjunto de datos, realiza una solicitud GET
y especifica la siguiente información:
- El nombre del conjunto de datos
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud GET
mediante curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores"
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "fhirStores": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID" }, { ... } ] }
Si configuraste algún campo en el recurso FhirStore
, también aparecerá en la respuesta.
PowerShell
Para enumerar los almacenes de FHIR en un conjunto de datos, realiza una solicitud GET
y especifica la siguiente información:
- El nombre del conjunto de datos
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud GET
mediante Windows 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/LOCATION/datasets/DATASET_ID/fhirStores" | Select-Object -Expand Content
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "fhirStores": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID" }, { ... } ] }
Si configuraste algún campo en el recurso FhirStore
, también aparecerá en la respuesta.
Go
Java
Node.js
Python
Obtén las capacidades o la declaración de conformidad para un almacén de FHIR
En los siguientes ejemplos, se muestra cómo obtener las capacidades (STU3 o R4) o la declaración de conformidad (DSTU2) para un almacén de FHIR.
La información en las capacidades o la declaración de conformidad refleja la configuración en el almacén de FHIR. Por ejemplo, si FhirStore.enableUpdateCreate
se configura como true
, esto se refleja en el campo CapabilityStatement.rest.resource.updateCreate
de la declaración de capacidades.
En la siguiente tabla, se muestra el método de la API de Cloud Healthcare para obtener las capacidades o la declaración de conformidad de un almacén de FHIR y su interacción de especificación FHIR equivalente:
Método de la API de Cloud Healthcare | Interacción de especificación de FHIR |
---|---|
projects.locations.datasets.fhirStores.fhir.capabilities |
capacidades (STU3 o R4) o conformance (DSTU2) |
Console
Cloud Console no admite la obtención de las capacidades ni la declaración de conformidad. En su lugar, usa curl
, Windows PowerShell o tu lenguaje preferido.
gcloud
La herramienta de gcloud
no admite la obtención de las capacidades o la declaración de conformidad. En su lugar, usa curl
, Windows PowerShell o tu lenguaje preferido.
API
Para obtener las capacidades o la declaración de conformidad de un almacén de FHIR, usa el método projects.locations.datasets.fhirStores.fhir.capabilities
.
curl
Para obtener las capacidades o la declaración de conformidad de un almacén de FHIR, realiza una solicitud GET
y especifica la siguiente información:
- El nombre del conjunto de datos
- El nombre del almacén FHIR
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud GET
mediante curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/metadata"
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "acceptUnknown": "both", "date": "2018-01-01", "description": "FHIR capability statement for the FHIR store specified by the request.", "experimental": true, "fhirVersion": "FHIR_VERSION", "format": [ "json" ], "id": "FHIR_STORE_ID", "kind": "instance", "patchFormat": [ "application/json-patch+json" ], "publisher": "Google", "resourceType": "CapabilityStatement", ... "status": "draft", "url": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "version": "20180101" }
PowerShell
Para obtener las capacidades o la declaración de conformidad de un almacén de FHIR, realiza una solicitud GET
y especifica la siguiente información:
- El nombre del conjunto de datos
- El nombre del almacén FHIR
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud GET
mediante Windows 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/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/metadata" | ConvertTo-Json
Si la solicitud tiene éxito, se mostrará la respuesta en formato JSON en el servidor:
{ "acceptUnknown": "both", "date": "2018-01-01", "description": "FHIR capability statement for the FHIR store specified by the request.", "experimental": true, "fhirVersion": "FHIR_VERSION", "format": [ "json" ], "id": "FHIR_STORE_ID", "kind": "instance", "patchFormat": [ "application/json-patch+json" ], "publisher": "Google", "resourceType": "CapabilityStatement", ... "status": "draft", "url": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "version": "20180101" }
Go
Java
Node.js
Python
Borra un almacén de FHIR
En los siguientes ejemplos, se muestra cómo borrar un almacén de FHIR.
Console
Para borrar un almacén de datos, realiza las siguientes acciones:
- En Cloud Console, ve a la página Conjuntos de datos.
- Haz clic en el ID del conjunto de datos para abrirlo.
- Selecciona el almacén de datos que deseas borrar y, luego, haz clic en Borrar.
- Para confirmar, escribe el nombre del almacén de datos y, luego, haz clic en Borrar.
gcloud
Para borrar un almacén de FHIR, ejecuta el comando de gcloud healthcare fhir-stores delete
:
Ejecuta el comando
delete
.gcloud healthcare fhir-stores delete FHIR_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
Para confirmar, escribe Y.
Si la solicitud se realiza correctamente, el símbolo del sistema muestra lo siguiente:
Deleted fhirStore [FHIR_STORE_ID].
API
Para borrar un almacén de FHIR, usa el método projects.locations.datasets.fhirStores.delete
.
curl
Para borrar un almacén de FHIR, realiza una solicitud DELETE
y especifica la siguiente información:
- El nombre del conjunto de datos superior
- El nombre del almacén FHIR
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud DELETE
mediante curl
.
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID"
Si la solicitud se realiza con éxito, el servidor muestra el cuerpo de la respuesta vacío en formato JSON:
{}
PowerShell
Para borrar un almacén de FHIR, realiza una solicitud DELETE
y especifica la siguiente información:
- El nombre del conjunto de datos superior
- El nombre del almacén FHIR
- Un token de acceso
En el siguiente ejemplo, se muestra una solicitud DELETE
mediante Windows 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/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID" | Select-Object -Expand Content
Si la solicitud se realiza con éxito, el servidor muestra el cuerpo de la respuesta vacío en formato JSON:
{}
Go
Java
Node.js
Python
¿Qué sigue?
Obtén más información sobre cómo crear y trabajar con recursos de FHIR.