このページでは、HL7v2 メッセージの取り込み、作成、ラベル付け、リスト表示、削除の方法について説明します。 HL7v2 メッセージは、システム間で臨床データを送信するために使用されます。HL7v2 メッセージには、所見、薬局に送信するための処方箋、金融取引、その他の臨床イベントに関する情報が含まれる場合があります。
HL7v2 メッセージの作成と取り込みの概要
次のいずれかの方法を使用して、Cloud Healthcare API に HL7v2 メッセージを保存します。
messages.ingest
を使用すると、メソッドは次のいずれかを含むレスポンスを生成します。
- 成功時の HL7v2 確認応答(
ACK
)メッセージ - エラーがある場合は否定応答(
NACK
)メッセージ
ACK
メッセージと NACK
メッセージは、このような確認応答を期待する HL7v2 インターフェース システムへのレスポンスに使用されます。
MLLP アダプターを使用したメッセージの取り込みと作成
HL7v2 メッセージは、最小階層プロトコル(MLLP)を使用して、医療システムと Cloud Healthcare API の間で配信されます。詳細については、MLLP と Google Cloud Platform MLLP アダプターをご覧ください。Cloud Healthcare API と安全に通信できるように MLLP アダプターを構成する方法については、TCP/IP 接続を介した HL7v2 メッセージの送信をご覧ください。
HL7v2 メッセージの取り込み
Cloud Healthcare API が医療システムからメッセージを取り込んだ後、Cloud Healthcare API は、次の特性を持つ base64 エンコードされた HL7v2 メッセージを含む hl7ack
フィールドを含んだレスポンスを生成します。
- メッセージタイプは
ACK
です。 - 送信側と受信側は逆になり、送信側アプリケーションと受信側アプリケーションは逆になります。
- メッセージの送信時刻は現在の時刻であり、新しいコントロール ID が生成されます。
MSH-9.1
フィールドの値はメッセージ タイプを定義します。MSA.1
フィールドの値はレスポンス タイプを定義します。AA
レスポンス タイプはApplication Accept
を示し、メッセージが検証されて正常に取り込まれたことを意味します。MSA.2
値には元のメッセージのコントロール ID が含まれています。
次のサンプルは、projects.locations.datasets.hl7V2Stores.messages.ingest
メソッドを使用して HL7v2 メッセージを取り込む方法を示しています。
curl
HL7v2 メッセージを取り込むには、POST
リクエストを行い、次の情報を指定します。
- 親データセットの名前と場所
- HL7v2 ストアの名前。
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 ストアの名前。
Message
次のサンプルは、Windows 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
API Explorer
メソッド リファレンス ページを開きます。ページの右側に [API Explorer] パネルが開きます。このツールを操作してリクエストを送信できます。必須フィールドを入力して、[Execute] をクリックします。
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 ストアは、\n
などの非標準ターミネータを含む HL7v2 メッセージを受け入れるように構成できます。
次の 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
セグメント ターミネータを \n
に設定して HL7v2 ストアを作成するには、POST
リクエストを行い、次の情報を指定します。
- 親データセットの名前と場所
- HL7v2 ストアの名前。
segmentTerminator
がCg==
に設定されたparserConfig
オブジェクト(\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
セグメント ターミネータを \n
に設定して HL7v2 ストアを作成するには、POST
リクエストを行い、次の情報を指定します。
- 親データセットの名前と場所
- HL7v2 ストアの名前。
segmentTerminator
がCg==
に設定されたparserConfig
オブジェクト(\n
の base64 エンコード)
次のサンプルは、Windows 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==" } }
null セグメント ヘッダーの使用
メッセージ ヘッダー セグメント(MSH)がない HL7v2 メッセージは、セグメント ヘッダーが null となります。通常、HL7v2 メッセージには、メッセージのソース、インテント、目的、宛先などのメタデータを定義する MSH が含まれます。MSH を使用すると、メッセージを検索してフィルタできます。ただし、HL7v2 ストアで ParserConfig
オブジェクトを構成し、allowNullHeader
フィールドを true
に設定することで、MSH を含まないメッセージを保存できます。
以下のサンプル メッセージには Patient Identification(PID)セグメントが含まれていますが、MSH は含まれていません。
PID|1||21004053^^^^MRN||SULLY^BRIAN||19611209|M|||123 MAIN ST^^MOUNTAIN SPRINGS^CO^80439
次のサンプルは、HL7v2 ストアを作成するときに ParserConfig
で allowNullHeader
を構成する方法を示しています。既存の HL7v2 ストアがある場合は、編集して ParserConfig
本文を指定できます。allowNullHeader
を true
に設定すると、セグメント ヘッダーが null のメッセージを作成または取り込むことができます。
curl
HL7v2 ストアを作成し、MSH を含まないメッセージを保存するには、POST
リクエストを行い、次の情報を指定します。
- 親データセットの名前と場所
- HL7v2 ストアの名前。
allowNullHeader
がtrue
に設定されたparserConfig
オブジェクト
次のサンプルは、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 ストアの名前。
allowNullHeader
がtrue
に設定されたparserConfig
オブジェクト
次のサンプルは、Windows 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 メッセージへのラベル付け
1 つのメッセージに 1 つ以上の Key-Value ラベルを追加できます。ラベルのユースケースの 1 つは、ステータス ラベルをメッセージに追加し、アプリケーションがステータスごとにメッセージをクエリできるようにすることです。
次のサンプルは、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
- 更新するラベルデータ
- 更新マスク
次のサンプルは、Windows 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
と Windows PowerShell のサンプルでは、完全性を確保するため FULL
ビューがクエリ パラメータとして追加されています。
curl
FULL
ビューを使用して HL7v2 メッセージの内容を取得するには、GET
リクエストを行い、次の情報を指定します。
- 親データセットの名前と場所
- HL7v2 ストアの名前。
- メッセージ ID
view
としてFULL
次のサンプルは、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
view
としてFULL
次のサンプルは、Windows 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
ビューの使用
次のサンプルは、parsedData
を除くすべてのメッセージ フィールドを含む RAW_ONLY
ビューを使用して、HL7v2 メッセージの内容を取得する方法を示しています。
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
次のサンプルは、Windows 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
ビューの使用
次のサンプルは、data
を除くすべてのメッセージ フィールドを含む PARSED_ONLY
ビューを使用して、HL7v2 メッセージの内容を取得する方法を示しています。
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
次のサンプルは、Windows 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
ビューの使用
次のサンプルは、name
フィールドのみを含む BASIC
ビューを使用して HL7v2 メッセージのコンテンツを取得する方法を示しています。
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
次のサンプルは、Windows 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
のいずれか 1 つ、または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
のいずれか 1 つ、またはFULL
、またはデフォルトのBASIC
を使用しない。
次のサンプルは、Windows 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
次のサンプルは、Windows 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 形式の空のレスポンス本文を返します。
{}