本頁說明如何擷取、建立、標記、列出、查看及刪除 HL7v2 訊息。HL7v2 訊息可用於在系統之間傳輸臨床資料。HL7v2 訊息可能包含觀察結果、要傳送至藥局的處方箋、財務交易或其他臨床事件的資訊。
建立及擷取 HL7v2 訊息的簡介
請使用下列任一方法,在 Cloud Healthcare API 中儲存 HL7v2 訊息:
使用 messages.ingest
時,該方法會產生包含下列任一項目的回應:
- 成功時的 HL7v2 確認訊息 (
ACK
) - 發生錯誤時的負面回應 (
NACK
) 訊息
ACK
和 NACK
訊息用於回覆預期收到這些確認的 HL7v2 介面系統。
使用 MLLP 轉接器擷取及建立訊息
系統會使用基本較低層通訊協定 (MLLP),在照護系統和 Cloud Healthcare API 之間傳送 HL7v2 訊息。詳情請參閱「MLLP 和 Google Cloud Platform MLLP 轉接器」。如需設定 MLLP 轉接器以與 Cloud Healthcare API 安全通訊的操作說明,請參閱「透過 TCP/IP 連線傳送 HL7v2 訊息」。
擷取 HL7v2 訊息
Cloud Healthcare API 擷取照護系統的訊息後,會產生包含 hl7ack
欄位的回應,其中包含具有下列特性的 Base64 編碼 HL7v2 訊息:
- 訊息類型為
ACK
。 - 傳送設施和接收設施會互換,傳送應用程式和接收應用程式也會互換。
- 訊息的傳送時間為目前時間,系統會產生新的控制 ID。
MSH-9.1
欄位的值會定義訊息類型。MSA.1
欄位的值會定義回應類型。AA
回應類型表示Application Accept
,表示訊息已驗證並成功攝入。MSA.2
值包含原始郵件的控制 ID。
下列範例說明如何使用 projects.locations.datasets.hl7V2Stores.messages.ingest
方法擷取 HL7v2 訊息。
curl
如要擷取 HL7v2 訊息,請提出 POST
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- A
Message
以下範例顯示使用 curl
的 POST
要求,以及名為 hl7v2-sample.json
的 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"
以下範例回應顯示 hl7Ack
和訊息詳細資料。
{ "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
如要擷取 HL7v2 訊息,請提出 POST
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- A
Message
以下範例顯示使用 PowerShell 的 POST
要求,以及名為 hl7v2-sample.json
的範例 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
以下範例回應顯示 hl7Ack
和訊息詳細資料。
{ "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
建立 HL7v2 訊息
以下範例說明如何使用 projects.locations.datasets.hl7V2Stores.messages.create
方法建立 HL7v2 訊息。
REST
如要建立 HL7v2 訊息,請使用 projects.locations.datasets.hl7V2Stores.messages.create
方法。
如果您需要 HL7v2 訊息檔案,以便搭配範例指令使用,可以下載 hl7v2-sample.json
JSON 檔案。
使用任何要求資料之前,請先替換以下項目:
- PROJECT_ID: Google Cloud 專案的 ID
- LOCATION:資料集位置
- DATASET_ID:HL7v2 存放區的父資料集
- HL7V2_STORE_ID:HL7v2 儲存庫 ID
- HL7V2_MESSAGE_FILE:本機上包含 HL7v2 訊息的 JSON 格式檔案路徑
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
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
執行下列指令:
$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
APIs Explorer
開啟方法參考頁面。系統會在頁面右側開啟 API Explorer 面板。 您可以使用這項工具來傳送要求。完成所有必填欄位,然後按一下「執行」。
hl7v2-sample.json
JSON 檔案建立訊息時,系統會傳回下列輸出內容:
Go
Java
Node.js
Python
HL7v2 訊息區段分隔符號和編碼
HL7v2 中的預設區段分隔符是回車 (\r
)。大多數文字編輯器會使用換行符號 (\n
) 字元做為區段分隔符。這會產生 HL7v2 訊息,但無法使用預設設定將其攝入 Cloud Healthcare API。如要允許 HL7v2 儲存庫擷取使用換行字元做為區段分隔符的訊息,請參閱「設定區段結束字元」。
如要將檔案中的換行字元轉換為列車代碼,請在 Linux 殼層中執行下列指令:
sed -z 's/\n/\r/g' INPUT_FILENAME > OUTPUT_FILENAME
擷取和建立方法會預期 HL7v2 訊息為 Base64 編碼字串。如要將字串轉換為 Base64 編碼,請在 Linux 殼層中執行下列指令:
openssl base64 -A -in ./INPUT_FILENAME -out ./OUTPUT_FILENAME
設定區段結束字元
建立或擷取資料時,HL7v2 訊息格式要求使用回車字元 \r
結束區段。您可以將 HL7v2 儲存庫設定為接受使用非標準結束字元的 HL7v2 訊息,例如 \n
。
請考慮下列 HL7v2 訊息,該訊息使用預設 \r
做為區段結束符號。建立 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
以下訊息與前一個訊息相同,但使用 \n
做為區段結尾符號:
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
如要儲存使用非標準結束字元的訊息,請在 HL7v2 儲存庫中設定 ParserConfig
物件,並將 segmentTerminator
欄位設為 \n
的 base64 編碼。
以下範例說明如何在建立 HL7v2 儲存庫時,在 ParserConfig
中設定 segmentTerminator
。如果您有現有的 HL7v2 儲存庫,可以編輯該儲存庫,提供 ParserConfig
主體。設定區段終結符號後,您可以建立或攝入訊息。
curl
如要建立 HL7v2 儲存庫,並將區段結束字元設為 \n
,請提出 POST
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
parserConfig
物件,其中segmentTerminator
設為Cg==
(\n
的 Base64 編碼)
以下範例顯示使用 curl
的 POST
要求。
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"
如果要求成功,伺服器會以 JSON 格式傳回:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "segmentTerminator": "Cg==" } }
PowerShell
如要建立 HL7v2 儲存庫,並將區段結束字元設為 \n
,請提出 POST
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
parserConfig
物件,其中segmentTerminator
設為Cg==
(\n
的 Base64 編碼)
以下範例顯示使用 PowerShell 的 POST
要求。
$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
如果要求成功,伺服器會以 JSON 格式傳回:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "segmentTerminator": "Cg==" } }
使用空白區段標頭
沒有訊息標頭區段 (MSH) 的 HL7v2 訊息具有空值區段標頭。一般來說,HL7v2 訊息會包含 MSH,用於定義中繼資料,例如訊息來源、意圖、目的和目的地。您可以使用 MSH 搜尋及篩選訊息。不過,您可以設定 HL7v2 儲存庫中的 ParserConfig
物件,並將 allowNullHeader
欄位設為 true
,藉此儲存不含 MSH 的訊息。
以下是包含病患身分 (PID) 區段的示例訊息,但沒有 MSH:
PID|1||21004053^^^^MRN||SULLY^BRIAN||19611209|M|||123 MAIN ST^^MOUNTAIN SPRINGS^CO^80439
以下範例說明如何在建立 HL7v2 儲存庫時,在 ParserConfig
中設定 allowNullHeader
。如果您已有 HL7v2 儲存庫,可以編輯該儲存庫,並提供 ParserConfig
主體。將 allowNullHeader
設為 true
後,您就可以建立或擷取含有空值區段標頭的訊息。
curl
如要建立 HL7v2 儲存庫,並儲存不含 MSH 的訊息,請提出 POST
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
parserConfig
物件,其中allowNullHeader
設為true
以下範例顯示使用 curl
的 POST
要求。
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"
如果要求成功,伺服器會以 JSON 格式傳回:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "allowNullHeader": true } }
PowerShell
如要建立 HL7v2 儲存庫,並儲存不含 MSH 的訊息,請提出 POST
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
parserConfig
物件,其中allowNullHeader
已設為true
以下範例顯示使用 PowerShell 的 POST
要求。
$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
如果要求成功,伺服器會以 JSON 格式傳回:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID", "parserConfig": { "allowNullHeader": true } }
為 HL7v2 訊息加上標籤
您可以為訊息新增一或多個鍵/值標籤。標籤的用途之一,就是為郵件新增狀態標籤,讓應用程式可以依狀態查詢郵件。
以下範例說明如何使用 projects.locations.datasets.hl7V2Stores.messages.patch
方法,在 HL7v2 訊息中新增標籤。
curl
如要在 HL7v2 訊息中新增標籤,請提出 PATCH
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
- 要更新的標籤資料
- 更新遮罩
以下範例顯示使用 curl
的 PATCH
要求。
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"
如果要求成功,伺服器會以 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
如要在 HL7v2 訊息中新增標籤,請提出 PATCH
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
- 要更新的標籤資料
- 更新遮罩
以下範例顯示使用 PowerShell 的 PATCH
要求。
$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
如果要求成功,伺服器會以 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
取得 HL7v2 訊息內容
以下範例說明如何使用 projects.locations.datasets.hl7V2Stores.messages.get
方法取得 HL7v2 訊息的內容。如要決定要取得的訊息部分,請使用下列任一選項提供 view
查詢參數:
BASIC
:只包含name
欄位。RAW_ONLY
:包含parsedData
欄位以外的所有訊息欄位。PARSED_ONLY
:包含data
欄位以外的所有訊息欄位。FULL
:包含所有訊息欄位。這是目前的預設做法。
以下範例說明如何使用 FULL
、RAW_ONLY
和 PARSED_ONLY
檢視畫面取得 HL7v2 訊息的內容。
使用 FULL
檢視畫面
您不需要明確設定 FULL
檢視畫面,因為 FULL
是預設值。不過,在下列 curl
和 PowerShell 範例中,FULL
檢視畫面會新增為查詢參數,以便完整顯示。
curl
如要使用 FULL
檢視畫面取得 HL7v2 訊息的內容,請提出 GET
要求並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
FULL
以view
呈現
以下範例顯示使用 curl
的 GET
要求。
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"
如果要求成功,伺服器會以 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
如要使用 FULL
檢視畫面取得 HL7v2 訊息的內容,請提出 GET
要求並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
FULL
以view
呈現
以下範例顯示使用 PowerShell 的 GET
要求。
$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
如果要求成功,伺服器會以 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
使用 RAW_ONLY
檢視畫面
以下範例說明如何使用 RAW_ONLY
檢視畫面取得 HL7v2 訊息的內容,其中包含 parsedData
以外的所有訊息欄位。
curl
如要使用 RAW_ONLY
檢視畫面取得 HL7v2 訊息的內容,請提出 GET
要求並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
RAW_ONLY
做為檢視
以下範例顯示使用 curl
的 GET
要求。
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"
如果要求成功,伺服器會以 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
如要使用 RAW_ONLY
檢視畫面取得 HL7v2 訊息的內容,請提出 GET
要求並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
RAW_ONLY
做為檢視
以下範例顯示使用 PowerShell 的 GET
要求。
$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
如果要求成功,伺服器會以 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" } ] }
使用 PARSED_ONLY
檢視畫面
以下範例說明如何使用 PARSED_ONLY
檢視畫面取得 HL7v2 訊息的內容,其中包含 data
以外的所有訊息欄位。
curl
如要使用 PARSED_ONLY
檢視畫面取得 HL7v2 訊息的內容,請提出 GET
要求並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
PARSED_ONLY
做為檢視
以下範例顯示使用 curl
的 GET
要求。
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"
如果要求成功,伺服器會以 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
如要使用 PARSED_ONLY
檢視畫面取得 HL7v2 訊息的內容,請提出 GET
要求並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
PARSED_ONLY
做為檢視
以下範例顯示使用 PowerShell 的 GET
要求。
$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
如果要求成功,伺服器會以 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 } } ] } }
使用 BASIC
檢視畫面
以下範例說明如何使用 BASIC
檢視畫面取得 HL7v2 訊息的內容,該檢視畫面僅包含 name
欄位。
curl
如要使用 BASIC
檢視畫面取得 HL7v2 訊息的內容,請提出 GET
要求並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
BASIC
做為檢視
以下範例顯示使用 curl
的 GET
要求。
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"
如果要求成功,伺服器會以 JSON 格式傳回:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID" }
PowerShell
如要使用 BASIC
檢視畫面取得 HL7v2 訊息的內容,請提出 GET
要求並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- 訊息 ID
BASIC
做為檢視
以下範例顯示使用 PowerShell 的 GET
要求。
$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
如果要求成功,伺服器會以 JSON 格式傳回:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID/messages/MESSAGE_ID" }
列出 HL7v2 訊息
以下範例說明如何使用此方法,列出 HL7v2 儲存庫中的訊息。如要決定要納入清單的每則訊息資訊,請使用下列任一選項指定 view
查詢參數:
BASIC
:只包含name
欄位。這是目前的預設做法。RAW_ONLY
:包含parsedData
欄位以外的所有訊息欄位。PARSED_ONLY
:包含data
欄位以外的所有訊息欄位。FULL
:包含所有訊息欄位。
curl
如要列出 HL7v2 儲存庫中的訊息,請提出 GET
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
view
、BASIC
、RAW_ONLY
、PARSED_ONLY
或FULL
之一,或省略以使用預設的BASIC
以下範例顯示使用 curl
的 GET
要求。要求指定 ?view=FULL
包含所有訊息欄位。
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"
如果要求成功,伺服器會傳回 200 OK
HTTP 狀態碼,以及名為 hl7_v2_messages
的訊息陣列。以下範例回應已截斷。
{ "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
如要列出 HL7v2 儲存庫中的訊息,請提出 GET
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
view
、BASIC
、RAW_ONLY
、PARSED_ONLY
或FULL
之一,或省略以使用預設的BASIC
以下範例顯示使用 PowerShell 的 GET
要求。這項要求會指定 ?view=FULL
包含所有訊息欄位。
$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
如果要求成功,伺服器會以 JSON 格式傳回回應。回應範例遭截斷。
{ "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
刪除 HL7v2 訊息
下列範例說明如何使用 projects.locations.datasets.hl7V2Stores.messages.delete
方法刪除 HL7v2 訊息。
curl
如要刪除 HL7v2 訊息,請提出 DELETE
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- HL7v2 訊息 ID
以下範例顯示使用 curl
的 DELETE
要求。
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"
如果要求成功,伺服器會以 JSON 格式傳回空白主體回應:
{}
PowerShell
如要刪除 HL7v2 訊息,請提出 DELETE
要求,並指定下列資訊:
- 父項資料集的名稱和位置
- HL7v2 儲存庫的名稱
- HL7v2 訊息 ID
以下範例顯示使用 PowerShell 的 DELETE
要求。
$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
如果要求成功,伺服器會以 JSON 格式傳回空白回應主體:
{}