En esta página se explica cómo ingerir, crear, etiquetar, mostrar, ver y eliminar mensajes HL7v2. Los mensajes HL7v2 se usan para transmitir datos clínicos entre sistemas. Un mensaje HL7v2 puede contener información sobre un resultado de observación, una receta para enviar a una farmacia, una transacción financiera u otros eventos clínicos.
Descripción general de la creación y la ingesta de mensajes HL7v2
Utiliza uno de los siguientes métodos para almacenar un mensaje HL7v2 en la API Cloud Healthcare:
Cuando usas messages.ingest
, el método genera una respuesta que contiene uno de los siguientes elementos:
- Un mensaje de confirmación HL7v2 (
ACK
) si la operación se realiza correctamente - Un mensaje de confirmación negativa (
NACK
) cuando se produce un error
Los mensajes ACK
y NACK
se usan para responder a sistemas de interfaz HL7v2 que esperan estas confirmaciones.
Ingestión y creación de mensajes con un adaptador MLLP
Los mensajes HL7v2 se envían entre los sistemas de atención sanitaria y la API Cloud Healthcare mediante el protocolo de capa inferior mínimo (MLLP). Para obtener más información, consulta MLLP y el adaptador MLLP de Google Cloud Platform. Para obtener instrucciones sobre cómo configurar un adaptador MLLP para que se comunique de forma segura con la API Cloud Healthcare, consulta el artículo Transmitir mensajes HL7v2 a través de conexiones TCP/IP.
Ingerir mensajes HL7v2
Una vez que la API Cloud Healthcare ingiere el mensaje de un sistema de asistencia, genera una respuesta que contiene un campo hl7ack
, que a su vez contiene un mensaje HL7v2 codificado en base64 con las siguientes características:
- El tipo de mensaje es
ACK
. - Las instalaciones de envío y de recepción se invierten, así como las aplicaciones de envío y de recepción.
- La hora de envío del mensaje es la hora actual y se genera un nuevo ID de control.
- El valor del campo
MSH-9.1
define el tipo de mensaje. - El valor del campo
MSA.1
define un tipo de respuesta. Un tipo de respuestaAA
indicaApplication Accept
, lo que significa que el mensaje se ha validado e ingerido correctamente. - El valor
MSA.2
contiene el ID de control del mensaje original.
En los siguientes ejemplos se muestra cómo ingerir un mensaje HL7v2 mediante el método projects.locations.datasets.hl7V2Stores.messages.ingest
.
curl
Para ingerir un mensaje HL7v2, haz una solicitud POST
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- Un
Message
En el siguiente ejemplo se muestra una solicitud POST
que utiliza curl
y un archivo JSON de ejemplo llamado hl7v2-sample.json
.
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/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages:ingest"
En la siguiente respuesta de ejemplo se muestran los detalles de hl7Ack
y del mensaje.
{ "hl7Ack": "TVNIfF5+XCZ8QXxBfEF8U0VORF9GQUNJTElUWXwyMDIwMDIxNDIxMjAwNXx8QUNLfDFmMmQ1MjQzLTFhOWEtNGE4My05ZmI5LWNlNTIzMTVmZjk2M3xUfDAuMA1NU0F8QUF8MjAxODAxMDEwMDAwMDA=", "message": { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/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" } ] } }
PowerShell
Para ingerir un mensaje HL7v2, haz una solicitud POST
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- Un
Message
En el siguiente ejemplo se muestra una solicitud POST
que utiliza PowerShell y un archivo JSON de ejemplo llamado hl7v2-sample.json
.
$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/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages:ingest" | Select-Object -Expand Content
En la siguiente respuesta de ejemplo se muestran los detalles de hl7Ack
y del mensaje.
{ "hl7Ack": "TVNIfF5+XCZ8QXxBfEF8U0VORF9GQUNJTElUWXwyMDIwMDIxNDIxMjAwNXx8QUNLfDFmMmQ1MjQzLTFhOWEtNGE4My05ZmI5LWNlNTIzMTVmZjk2M3xUfDAuMA1NU0F8QUF8MjAxODAxMDEwMDAwMDA=", "message": { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/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" } ] } }
Go
Java
Node.js
Python
Crear mensajes HL7v2
En los siguientes ejemplos se muestra cómo crear un mensaje HL7v2 con el método projects.locations.datasets.hl7V2Stores.messages.create
.
REST
Para crear un mensaje HL7v2, usa el método projects.locations.datasets.hl7V2Stores.messages.create
.
Si necesitas un archivo de mensajes HL7v2 para usarlo con los comandos de ejemplo, puedes descargar el archivo JSON hl7v2-sample.json
.
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
- PROJECT_ID: el ID de tu Google Cloud proyecto
- LOCATION: la ubicación del conjunto de datos
- DATASET_ID: el conjunto de datos superior del almacén HL7v2
- HL7V2_STORE_ID: el ID del almacén HL7v2
- HL7V2_MESSAGE_FILE: la ruta a un archivo con formato JSON que contiene un mensaje HL7v2 en tu máquina local
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el comando siguiente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
--data-binary @HL7V2_MESSAGE_FILE \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages"
PowerShell
Ejecuta el comando siguiente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-InFile HL7V2_MESSAGE_FILE `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages" | Select-Object -Expand Content
Explorador de APIs
Abre la página de referencia del método. El panel Explorador de APIs se abre en la parte derecha de la página. Puedes interactuar con esta herramienta para enviar solicitudes. Rellena los campos obligatorios y haz clic en Ejecutar.
hl7v2-sample.json
:
Go
Java
Node.js
Python
Separadores de segmentos y codificación de mensajes HL7v2
El separador de segmentos predeterminado en HL7v2 es un retorno de carro (\r
). La mayoría de los editores de texto usan caracteres de salto de línea (\n
) como separadores de segmentos. De esta forma, se generan mensajes HL7v2 que no se pueden ingerir en la API Cloud Healthcare con la configuración predeterminada. Para permitir que un almacén HL7v2 ingiera mensajes que usen caracteres de salto de línea como separadores de segmentos, consulta Configurar el terminador de segmentos.
Para convertir los caracteres de salto de línea de un archivo en retornos de carro, ejecuta el siguiente comando en un shell de Linux:
sed -z 's/\n/\r/g' INPUT_FILENAME > OUTPUT_FILENAME
Los métodos de ingesta y creación esperan que los mensajes HL7v2 sean cadenas codificadas en base64. Para convertir una cadena en codificación base64, ejecuta el siguiente comando en un shell de Linux:
openssl base64 -A -in ./INPUT_FILENAME -out ./OUTPUT_FILENAME
Definir el terminador de segmentos
Al crear o ingerir datos, el formato de mensaje HL7v2 requiere que los segmentos terminen con el carácter de retorno \r
. Puedes configurar un almacén HL7v2 para que acepte mensajes HL7v2 con un terminador no estándar, como \n
.
Considera el siguiente mensaje HL7v2 que usa el carácter \r
predeterminado como terminador de segmento. Este mensaje se acepta de forma predeterminada al crear un almacén HL7v2.
MSH|^~\\&|FROM_APP|FROM_FACILITY|TO_APP|TO_FACILITY|20150503223000||ADT^A01|20150503223000|P|2.5|\r EVN|A01|20110613083617|\r PID|1||21004053^^^^MRN||SULLY^BRIAN||19611209|M|||123 MAIN ST^^MOUNTAIN SPRINGS^CO^80439|\r PV1||I|H73 RM1^1^^HIGHWAY 73 CLINIC||||5148^MARY QUINN|||||||||Y||||||||||||||||||||||||||||20150503223000|\r
El siguiente mensaje es idéntico al anterior, excepto que
utiliza \n
como terminador de segmento:
MSH|^~\\&|FROM_APP|FROM_FACILITY|TO_APP|TO_FACILITY|20150503223000||ADT^A01|20150503223000|P|2.5|\n EVN|A01|20110613083617|\n PID|1||21004053^^^^MRN||SULLY^BRIAN||19611209|M|||123 MAIN ST^^MOUNTAIN SPRINGS^CO^80439|\n PV1||I|H73 RM1^1^^HIGHWAY 73 CLINIC||||5148^MARY QUINN|||||||||Y||||||||||||||||||||||||||||20150503223000|\n
Para almacenar el mensaje con el terminador no estándar, configura el objeto ParserConfig
en el almacén HL7v2 y asigna al campo segmentTerminator
la codificación en base64 de \n
.
En los siguientes ejemplos se muestra cómo configurar segmentTerminator
en ParserConfig
cuando crea un almacén HL7v2.
Si ya tienes un almacén HL7v2, puedes editarlo para proporcionar el cuerpo de la solicitud ParserConfig
. Después de definir el terminador de segmento, puedes crear o ingresar el mensaje.
curl
Para crear un almacén HL7v2 con el terminador de segmentos definido como \n
, haz una solicitud POST
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- Un objeto
parserConfig
con el valorsegmentTerminator
definido comoCg==
(la codificación en base64 de\n
)
En el siguiente ejemplo se muestra una solicitud POST
que utiliza curl
.
curl -X POST \ --data "{ 'parserConfig': { 'segmentTerminator': 'Cg==' } }" \ -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/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "segmentTerminator": "Cg==" } }
PowerShell
Para crear un almacén HL7v2 con el terminador de segmentos definido como \n
, haz una solicitud POST
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- Un objeto
parserConfig
con el valorsegmentTerminator
definido comoCg==
(la codificación en base64 de\n
)
En el siguiente ejemplo se muestra una solicitud POST
que utiliza 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 "{ 'parserConfig': { 'segmentTerminator': 'Cg==' } } ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "segmentTerminator": "Cg==" } }
Usar un encabezado de segmento nulo
Un mensaje HL7v2 sin un segmento de encabezado de mensaje (MSH) tiene un encabezado de segmento nulo. Normalmente, un mensaje HL7v2 contiene un segmento MSH que define metadatos como la fuente, la intención, el propósito y el destino del mensaje.
El MSH te permite buscar y filtrar mensajes. Sin embargo, puedes almacenar mensajes que no contengan un segmento MSH configurando el objeto ParserConfig
en el almacén HL7v2 y asignando el valor true
al campo allowNullHeader
.
El siguiente mensaje de ejemplo contiene un segmento de identificación del paciente (PID), pero no un segmento MSH:
PID|1||21004053^^^^MRN||SULLY^BRIAN||19611209|M|||123 MAIN ST^^MOUNTAIN SPRINGS^CO^80439
En los siguientes ejemplos se muestra cómo configurar allowNullHeader
en ParserConfig
cuando crea un almacén HL7v2.
Si ya tienes un almacén HL7v2, puedes editarlo y proporcionar el cuerpo ParserConfig
. Después de definir allowNullHeader
como true
,
puedes crear o insertar mensajes con encabezados de segmento nulos.
curl
Para crear un almacén HL7v2 y almacenar mensajes que no contengan un MSH, haz una solicitud POST
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- Objeto
parserConfig
conallowNullHeader
definido comotrue
En el siguiente ejemplo se muestra una solicitud POST
que utiliza curl
.
curl -X POST \ --data "{ 'parserConfig': { 'allowNullHeader': true } }" \ -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/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "allowNullHeader": true } }
PowerShell
Para crear un almacén HL7v2 y almacenar mensajes que no contengan un MSH, haz una solicitud POST
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- Objeto
parserConfig
conallowNullHeader
definido comotrue
En el siguiente ejemplo se muestra una solicitud POST
que utiliza 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 "{ 'parserConfig': { 'nullTerminator': true } } ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores?hl7V2StoreId=HL7V2_STORE_ID" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "allowNullHeader": true } }
Etiquetar un mensaje HL7v2
Puedes añadir una o más etiquetas clave‑valor a un mensaje. Un caso práctico de las etiquetas es la adición de etiquetas de estado a un mensaje para que una aplicación pueda consultar mensajes por estado.
En los siguientes ejemplos se muestra cómo añadir etiquetas a un mensaje HL7v2 mediante el método projects.locations.datasets.hl7V2Stores.messages.patch
.
curl
Para añadir etiquetas a un mensaje HL7v2, haz una solicitud PATCH
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
- Datos de la etiqueta que se va a actualizar.
- Una máscara de actualización
En el siguiente ejemplo se muestra una solicitud PATCH
que utiliza curl
.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'labels': { 'KEY' : 'VALUE' } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?updateMask=labels"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" } ], "labels": { "KEY": "VALUE" } }
PowerShell
Para añadir etiquetas a un mensaje HL7v2, haz una solicitud PATCH
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
- Datos de la etiqueta que se va a actualizar.
- Una máscara de actualización
En el siguiente ejemplo se muestra una solicitud PATCH
que utiliza 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 "{ 'labels': { 'KEY': 'VALUE' } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?updateMask=labels" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" } ], "labels": { "KEY": "VALUE" } }
Go
Java
Node.js
Python
Obtener el contenido de mensajes HL7v2
En los siguientes ejemplos se muestra cómo obtener el contenido de un mensaje HL7v2 mediante el método projects.locations.datasets.hl7V2Stores.messages.get
. Para determinar las partes del mensaje que quieres obtener, proporciona el parámetro de consulta view
con una de las siguientes opciones:
BASIC
: incluye solo el camponame
.RAW_ONLY
: incluye todos los campos del mensaje, excepto el campoparsedData
.PARSED_ONLY
: incluye todos los campos del mensaje, excepto el campodata
.FULL
: incluye todos los campos del mensaje. Este es el valor predeterminado.
En los siguientes ejemplos se muestra cómo obtener el contenido de un mensaje HL7v2 mediante las vistas FULL
, RAW_ONLY
y PARSED_ONLY
.
Usar la vista FULL
No es necesario que definas explícitamente la vista FULL
, ya que es el valor predeterminado.FULL
Sin embargo, en los siguientes ejemplos de curl
y PowerShell, la vista FULL
se añade como parámetro de consulta para que el ejemplo esté completo.
curl
Para obtener el contenido de un mensaje HL7v2 mediante la vista FULL
, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
FULL
comoview
En el siguiente ejemplo se muestra una solicitud GET
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=FULL"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ], "parsedData": { "segments": [ { ""segmentId": "SEGMENT_ID_1", "fields": { FIELDS_1 } }, { "segmentId": "SEGMENT_ID_2", "fields": { FIELDS_2 } }, { "segmentId": "SEGMENT_ID_3", "fields": { FIELDS_3 } } ] } }
PowerShell
Para obtener el contenido de un mensaje HL7v2 mediante la vista FULL
, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
FULL
comoview
En el siguiente ejemplo se muestra una solicitud GET
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=FULL" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ], "parsedData": { "segments": [ { ""segmentId": "SEGMENT_ID_1", "fields": { FIELDS_1 } }, { "segmentId": "SEGMENT_ID_2", "fields": { FIELDS_2 } }, { "segmentId": "SEGMENT_ID_3", "fields": { FIELDS_3 } } ] } }
Go
Java
Node.js
Python
Usar la vista RAW_ONLY
En los siguientes ejemplos se muestra cómo obtener el contenido de un mensaje HL7v2 mediante la vista RAW_ONLY
, que incluye todos los campos del mensaje, excepto parsedData
.
curl
Para obtener el contenido de un mensaje HL7v2 mediante la vista RAW_ONLY
, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
RAW_ONLY
como vista
En el siguiente ejemplo se muestra una solicitud GET
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=RAW_ONLY"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ] }
PowerShell
Para obtener el contenido de un mensaje HL7v2 mediante la vista RAW_ONLY
, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
RAW_ONLY
como vista
En el siguiente ejemplo se muestra una solicitud GET
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=RAW_ONLY" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ] }
Usar la vista PARSED_ONLY
En los siguientes ejemplos se muestra cómo obtener el contenido de un mensaje HL7v2 mediante la vista PARSED_ONLY
, que incluye todos los campos del mensaje, excepto data
.
curl
Para obtener el contenido de un mensaje HL7v2 mediante la vista PARSED_ONLY
, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
PARSED_ONLY
como vista
En el siguiente ejemplo se muestra una solicitud GET
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=PARSED_ONLY"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ], "parsedData": { "segments": [ { "segmentId": "SEGMENT_ID_1", "fields": { FIELDS_1 } }, { "segmentId": "SEGMENT_ID_2", "fields": { FIELDS_2 } }, { "segmentId": "SEGMENT_ID_3", "fields": { FIELDS_3 } } ] } }
PowerShell
Para obtener el contenido de un mensaje HL7v2 mediante la vista PARSED_ONLY
, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
PARSED_ONLY
como vista
En el siguiente ejemplo se muestra una solicitud GET
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=PARSED_ONLY" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "sendFacility": "SEND_FACILITY", "sendTime": "2018-01-01T00:00:00Z", "messageType": "TYPE", "createTime": "CREATE_TIME", "patientIds": [ { "value": "VALUE_1", "type": "TYPE_1" }, { "value": "VALUE_2", "type": "TYPE_2" }, { "value": "VALUE_3", "type": "TYPE_3" } ], "parsedData": { "segments": [ { "segmentId": "SEGMENT_ID_1", "fields": { FIELDS_1 } }, { "segmentId": "SEGMENT_ID_2", "fields": { FIELDS_2 } }, { "segmentId": "SEGMENT_ID_3", "fields": { FIELDS_3 } } ] } }
Usar la vista BASIC
En los siguientes ejemplos se muestra cómo obtener el contenido de un mensaje HL7v2 mediante la vista BASIC
, que solo incluye el campo name
.
curl
Para obtener el contenido de un mensaje HL7v2 mediante la vista BASIC
, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
BASIC
como vista
En el siguiente ejemplo se muestra una solicitud GET
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=BASIC"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID" }
PowerShell
Para obtener el contenido de un mensaje HL7v2 mediante la vista BASIC
, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- ID del mensaje
BASIC
como vista
En el siguiente ejemplo se muestra una solicitud GET
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID?view=BASIC" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID" }
Mostrar mensajes HL7v2
En los siguientes ejemplos se muestra cómo ver una lista de los mensajes de un almacén HL7v2 mediante el método. Para determinar la información de cada mensaje que se incluirá en la lista, especifica el parámetro de consulta view
con una de las siguientes opciones:
BASIC
: incluye solo el camponame
. Este es el valor predeterminado.RAW_ONLY
: incluye todos los campos del mensaje, excepto el campoparsedData
.PARSED_ONLY
: incluye todos los campos del mensaje, excepto el campodata
.FULL
: incluye todos los campos del mensaje.
curl
Para ver una lista de los mensajes de un almacén HL7v2, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
view
, uno de los valoresBASIC
,RAW_ONLY
,PARSED_ONLY
oFULL
, u omítelo para usar el valor predeterminadoBASIC
En el siguiente ejemplo se muestra una solicitud GET
que utiliza curl
. La solicitud especifica
?view=FULL
que se incluyan todos los campos del mensaje.
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/hl7V2Stores/HL7V2_STORE_ID/messages?view=FULL"
Si la solicitud se realiza de forma correcta, el servidor devuelve un código de estado HTTP 200 OK
y un array de mensajes llamado hl7_v2_messages
. La siguiente respuesta de ejemplo se ha acortado.
{ "hl7_v2_messages": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "SEND_TIME", "messageType": "MESSAGE_TYPE", "createTime": "CREATE_TIME", ... }, ... ] }
PowerShell
Para ver una lista de los mensajes de un almacén HL7v2, haz una solicitud GET
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
view
, uno de los valoresBASIC
,RAW_ONLY
,PARSED_ONLY
oFULL
, u omítelo para usar el valor predeterminadoBASIC
En el siguiente ejemplo se muestra una solicitud GET
que utiliza PowerShell. La solicitud
especifica ?view=FULL
para incluir todos los campos del mensaje.
$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/hl7V2Stores/HL7V2_STORE_ID/messages?view=FULL" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON. La respuesta de ejemplo está truncada.
{ "hl7_v2_messages": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID", "data": "DATA", "sendFacility": "SEND_FACILITY", "sendTime": "SEND_TIME", "messageType": "MESSAGE_TYPE", "createTime": "CREATE_TIME", ... }, ... ] }
Go
Java
Node.js
Python
Eliminar un mensaje HL7v2
En los siguientes ejemplos se muestra cómo eliminar un mensaje HL7v2 mediante el método projects.locations.datasets.hl7V2Stores.messages.delete
.
curl
Para eliminar un mensaje HL7v2, haz una solicitud DELETE
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- El ID del mensaje HL7v2
En el siguiente ejemplo se muestra una solicitud DELETE
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta con cuerpo vacío en formato JSON:
{}
PowerShell
Para eliminar un mensaje HL7v2, haz una solicitud DELETE
y especifica la siguiente información:
- Nombre y ubicación del conjunto de datos principal
- Nombre del almacén HL7v2.
- El ID del mensaje HL7v2
En el siguiente ejemplo se muestra una solicitud DELETE
que utiliza 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/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve el cuerpo vacío de la respuesta en formato JSON:
{}