API の構造

このページでは、Cloud Healthcare API のパスおよびオペレーションの構造と、それらを使用してデータにアクセスし管理する方法について説明します。

概要

データセットとデータストア内のヘルスケア データは、REST API を使用してアクセスおよび管理されます。REST API は以下を使用して各データストアを識別します。

  • Google Cloud プロジェクト
  • Google Cloud のロケーション
  • データセット ID
  • データストアの種類
  • データストア ID

この API はモダリティ固有のアクセス基準も実装しており、これらの基準は、各モダリティの業界基準に準拠しています。

管理オペレーション

管理オペレーションは、データセットとすべてのデータストアで行えます。主に、データセットとデータストアの作成、読み取り、更新、削除(CRUD)で構成されます。管理オペレーションはほとんどの Google Cloud API と整合性があるため、特定のモダリティ基準を遵守する必要はありません。

管理オペレーションの例は次のとおりです。

  • データセットとデータストアの作成、削除、取得、一覧表示、パッチ適用
  • IAM 権限の設定、取得、テスト

リソース名

リソース名は、少なくともプロジェクト ID とロケーションで構成されます。データセット、データストア、データストアの任意の子リソースを含めることもできます。

Cloud Healthcare API データセット内に存在するデータストアのリソース名は次の形式です。

/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/DATA_STORE_TYPE/DATA_STORE_ID

たとえば、clinical-store1 という HL7v2 ストアのリソース名は次のようになります。

/projects/my-project/locations/us-central1/datasets/my-dataset/hl7V2Stores/clinical-store1

このリソース名は、us-central1 リージョンの my-project というプロジェクトを示しています。プロジェクトには my-dataset というデータセットが含まれ、データセットには clinical-store1 という HL7v2 ストアが含まれています。

ロケーション、データセット、データストア、データストアの子リソースに対するすべてのオペレーションでは、REST パスまたは gRPC リクエストでリソース名を指定する必要があります。

モダリティ固有のオペレーションのためのモダリティパス

モダリティ固有のデータストア内のデータにアクセスするオペレーションでは、リソース名(アクセスするデータストアを識別する)とモダリティパス(取得する実際のデータを識別する)の 2 つの要素で構成されるリクエスト パスを使用します。

FHIR リソースのモダリティパス

たとえば、患者の ID を使用して特定の FHIR 患者リソースを読み取るリクエストの場合、そのフルパスは次のようになります。

RESOURCE_NAME/resources/Patient/PATIENT_ID

/Patient/PATIENT_ID は、PATIENT_ID で指定された ID を持つ患者リソースのモダリティパス(FHIR 標準に従って構造化される)です。

DICOMweb モダリティパス

特定の患者のすべてのスタディを取得する場合、DICOMweb リクエストは次のようになります。

RESOURCE_NAME/dicomWeb/studies?PatientName=PATIENT_NAME

特定のスタディとシリーズ内のすべてのインスタンスを取得する場合は、次のようなリクエストになります。

RESOURCE_NAME/dicomWeb/studies/STUDY_UID/series/SERIES_UID/instances

インスタンスを取得するリクエストは、次のようになります。

RESOURCE_NAME/dicomWeb/studies/STUDY_UID/series/SERIES_UID/instances/INSTANCE_UID

上記のすべての例におけるモダリティパスの指定は、DICOMweb 規格のパス構造に準拠しています。