

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# FHIR を使用した HealthLake データのエクスポート `$export`
<a name="reference-fhir-operations-export"></a>

FHIR \$1export オペレーションを使用して、HealthLake データストアからデータを一括エクスポートできます。HealthLake は、 `POST`および `GET`リクエスト`$export`を使用した FHIR をサポートしています。でエクスポートリクエストを行うには`POST`、必要なアクセス許可を持つ IAM ユーザー、グループ、またはロールがあり、リクエスト`$export`の一部として を指定し、リクエスト本文に必要なパラメータを含める必要があります。

**注記**  
FHIR を使用して行われたすべての HealthLake エクスポートリクエスト`$export`は `ndjson`形式で返され、Amazon S3 バケットにエクスポートされます。各 Amazon S3 オブジェクトには 1 つの FHIR リソースタイプのみが含まれます。  
 AWS アカウントサービスクォータごとにエクスポートリクエストをキューに入れることができます。詳細については、「[Service Quotas](reference-healthlake-endpoints-quotas.md#reference-healthlake-quotas)」を参照してください。

HealthLake は、次の 3 種類の一括エクスポートエンドポイントリクエストをサポートしています。


**HealthLake バルク`$export`タイプ**  

| エクスポートタイプ | 説明 | 構文 | 
| --- | --- | --- | 
| システム | HealthLake FHIR サーバーからすべてのデータをエクスポートします。 | `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/$export`  | 
| すべての患者 | 患者リソースタイプに関連付けられたリソースタイプを含む、すべての患者に関連するすべてのデータをエクスポートします。 | `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export` `GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export` | 
| 患者のグループ | グループ ID で指定された患者のグループに関連するすべてのデータをエクスポートします。 | `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export` `GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export` | 

## [開始する前に]
<a name="export-rest-before-you-begin"></a>

HealthLake 用の FHIR REST API を使用してエクスポートリクエストを行うには、次の要件を満たします。
+ エクスポートリクエストを行うために必要なアクセス許可を持つユーザー、グループ、またはロールを設定しておく必要があります。詳細については[`$export` リクエストの承認](#export-rest-auth)を参照してください。
+ データをエクスポートする Amazon S3 バケットへの HealthLake アクセスを許可するサービスロールを作成しておく必要があります。サービスロールでは、サービスプリンシパルとして HealthLake も指定する必要があります。アクセス許可の設定の詳細については、「」を参照してください[エクスポートジョブのアクセス許可の設定](getting-started-setting-up.md#setting-up-export-permissions)。

## `$export` リクエストの承認
<a name="export-rest-auth"></a>

FHIR REST API を使用してエクスポートリクエストを成功させるには、IAM または OAuth2.0. サービスロールも必要です。

**IAM を使用したリクエストの承認**  
`$export` リクエストを行うときは、ユーザー、グループ、またはロールに IAM アクションがポリシーに含まれている必要があります。詳細については、「[エクスポートジョブのアクセス許可の設定](getting-started-setting-up.md#setting-up-export-permissions)」を参照してください。

**SMART on FHIR (OAuth 2.0) を使用したリクエストの承認**  
SMART on FHIR 対応 HealthLake データストアに`$export`リクエストを行うときは、適切なスコープを割り当てる必要があります。詳細については、「[HealthLake の FHIR リソーススコープに関する SMART](reference-smart-on-fhir-oauth-scopes.md#smart-on-fhir-scopes-rest)」を参照してください。

**注記**  
`GET` リクエスト`$export`を含む FHIR では、ファイルのエクスポートと取得をリクエストするために、同じ認証方法またはベアラートークン (SMART on FHIR の場合) が必要です。`$export` で FHIR を使用してエクスポートされたファイルは`GET`、48 時間ダウンロードできます。

## `$export` リクエストを行う
<a name="export-rest-request"></a>

このセクションでは、FHIR REST API を使用してエクスポートリクエストを行うときに必要な手順について説明します。

 AWS アカウントで誤って課金されないように、`$export`構文を指定せずにリクエストを実行して`POST`リクエストをテストすることをお勧めします。

リクエストを行うには、以下を実行する必要があります。

1. サポートされているエンドポイント`$export`の`POST`リクエスト URL で を指定します。

1. 必要なヘッダーパラメータを指定します。

1. 必要なパラメータを定義するリクエスト本文を指定します。

### ステップ 1: サポートされている[エンドポイント](reference-healthlake-endpoints-quotas.md#reference-healthlake-endpoints)`$export`の`POST`リクエスト URL で を指定します。
<a name="export-rest-request-step-1"></a>

HealthLake は、3 種類の一括エクスポートエンドポイントリクエストをサポートしています。一括エクスポートリクエストを行うには、サポートされている 3 つのエンドポイントのいずれかに対して `POST`ベースのリクエストを行う必要があります。次の例は、リクエスト URL `$export`で を指定する場所を示しています。
+ `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/$export`
+ `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export`
+ `POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export`

`POST` リクエスト文字列では、以下のサポートされている検索パラメータを使用できます。

#### サポートされている検索パラメータ
<a name="export-rest-query-parameters"></a>

HealthLake は、一括エクスポートリクエストで次の検索修飾子をサポートしています。

次の例には、リクエストを送信する前にエンコードする必要がある特殊文字が含まれています。


| 名前 | 必須? | 説明 | 例 | 
| --- | --- | --- | --- | 
| \$1outputFormat | いいえ | リクエストされたバルクデータファイルを生成する形式。使用できる値は、application/fhir\$1ndjson、application/ndjson、 ですndjson。 |  | 
| \$1type | いいえ | エクスポートジョブに含めるカンマ区切りの FHIR リソースタイプの文字列。すべてのリソースをエクスポートするとコストがかかる\$1type可能性があるため、 を含めることをお勧めします。 | &\$1type=MedicationStatement, Observation | 
| \$1since | いいえ | 日付タイムスタンプ以降に変更されたリソースタイプ。リソースタイプに最終更新時刻がない場合、レスポンスに含まれます。 | &\$1since=2024-05-09T00%3A00%3A00Z | 
| \$1until | いいえ | 日付タイムスタンプ以前に変更されたリソースタイプ。と組み合わせて使用\$1sinceして、エクスポートする特定の時間範囲を定義します。リソースタイプに最終更新時刻がない場合、レスポンスから除外されます。 | &\$1until=2024-12-31T23%3A59%3A59Z | 

### ステップ 2: 必要なヘッダーパラメータを指定する
<a name="export-rest-request-step-2"></a>

FHIR REST API を使用してエクスポートリクエストを行うには、次のヘッダーパラメータを指定する必要があります。
+ Content-Type：`application/fhir+json`
+ 優先: `respond-async`

次に、リクエスト本文で必要な要素を指定する必要があります。

### ステップ 3: で必要なパラメータを定義するリクエスト本文を指定します。
<a name="export-rest-request-step-3"></a>

エクスポートリクエストには、 `JSON`形式の本文も必要です。本文には、次のパラメータを含めることができます。


| Key | 必須? | 説明 | 値 | 
| --- | --- | --- | --- | 
| DataAccessRoleArn | はい | HealthLake サービスロールの ARN。使用するサービスロールは、サービスプリンシパルとして HealthLake を指定する必要があります。 | arn:aws:iam::444455556666:role/your-healthlake-service-role | 
| JobName | いいえ | エクスポートリクエストの名前。 | your-export-job-name | 
| S3Uri | はい | OutputDataConfig キーの一部。エクスポートされたデータがダウンロードされる送信先バケットの S3 URI。 | s3://amzn-s3-demo-bucket/EXPORT-JOB/ | 
| KmsKeyId | はい | OutputDataConfig キーの一部。Amazon S3 バケットの保護に使用される AWS KMS キーの ARN。 | arn:aws:kms:region-of-bucket:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab | 

**Example FHIR REST API を使用して行われたエクスポートリクエストの本文**  
FHIR REST API を使用してエクスポートリクエストを行うには、次に示すように本文を指定する必要があります。  

```
{
  "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role",
  "JobName": "your-export-job",
  "OutputDataConfig": {
    "S3Configuration": {
      "S3Uri": "s3://amzn-s3-demo-bucket/EXPORT-JOB",
      "KmsKeyId": "arn:aws:kms:region-of-bucket:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab"
    }
  }
}
```

リクエストが成功すると、次のレスポンスを受け取ります。

*レスポンスヘッダー*

```
content-location: https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-job-id
```

*レスポンス本文*

```
{
  "datastoreId": "your-data-store-id",
  "jobStatus": "SUBMITTED",
  "jobId": "your-export-request-job-id"
}
```

## エクスポートリクエストの管理
<a name="export-rest-management"></a>

エクスポートリクエストが成功したら、 を使用して現在のエクスポートリクエストのステータスを`$export`記述し、現在のエクスポートリクエストをキャンセル`$export`して、リクエストを管理できます。

REST API を使用してエクスポートリクエストをキャンセルすると、キャンセルリクエストを送信した時点までにエクスポートされたデータの一部に対してのみ課金されます。

以下のトピックでは、現在のエクスポートリクエストのステータスを取得またはキャンセルする方法について説明します。

### エクスポートリクエストのキャンセル
<a name="export-rest-management-describe"></a>

エクスポートリクエストをキャンセルするには、`DELETE`リクエストを行い、リクエスト URL にジョブ ID を指定します。

```
DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-job-id
```

リクエストが成功すると、以下が表示されます。

```
{
  "exportJobProperties": {
    "jobId": "your-original-export-request-job-id",
    "jobStatus": "CANCEL_SUBMITTED",
    "datastoreId": "your-data-store-id"
  }
}
```

リクエストが成功しない場合、次の情報が表示されます。

```
{
  "resourceType": "OperationOutcome",
  "issue": [
    {
      "severity": "error",
      "code": "not-supported",
      "diagnostics": "Interaction not supported."
    }
  ]
}
```

### エクスポートリクエストの説明
<a name="export-rest-management-describe"></a>

エクスポートリクエストのステータスを取得するには、 `export`と を使用して`GET`リクエストを行います`export-request-job-id`。

```
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-id
```

JSON レスポンスには `ExportJobProperties` オブジェクトが含まれます。これには、次のキーと値のペアが含まれる場合があります。


| 名前 | 必須? | 説明 | 値 | 
| --- | --- | --- | --- | 
| DataAccessRoleArn | いいえ | HealthLake サービスロールの ARN。使用するサービスロールは、サービスプリンシパルとして HealthLake を指定する必要があります。 | arn:aws:iam::444455556666:role/your-healthlake-service-role | 
| SubmitTime | いいえ | エクスポートジョブが送信された日付。 | Apr 21, 2023 5:58:02 | 
| EndTime | いいえ | エクスポートジョブが完了した時刻。 | Apr 21, 2023 6:00:08 PM | 
| JobName | いいえ | エクスポートリクエストの名前。 | your-export-job-name | 
| JobStatus | いいえ |  | 次の値を指定できます。<pre>SUBMITTED | IN_PROGRESS | COMPLETED_WITH_ERRORS | COMPLETED |<br />      FAILED</pre> | 
| S3Uri | はい | [OutputDataConfig](https://docs.aws.amazon.com/healthlake/latest/APIReference/API_OutputDataConfig.html) オブジェクトの一部。エクスポートされたデータがダウンロードされるレプリケート先バケットの Amazon S3 URI。 | s3://amzn-s3-demo-bucket/EXPORT-JOB/ | 
| KmsKeyId | はい | [OutputDataConfig](https://docs.aws.amazon.com/healthlake/latest/APIReference/API_OutputDataConfig.html) オブジェクトの一部。Amazon S3 バケットの保護に使用される AWS KMS キーの ARN。 | arn:aws:kms:region-of-bucket:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab | 

**Example : FHIR REST API を使用して行われた describe エクスポートリクエストの本文**  
成功すると、次の JSON レスポンスが表示されます。  

```
{
  "exportJobProperties": {
    "jobId": "your-export-request-id",
    "JobName": "your-export-job",
    "jobStatus": "SUBMITTED",
    "submitTime": "Apr 21, 2023 5:58:02 PM",
    "endTime": "Apr 21, 2023 6:00:08 PM",
    "datastoreId": "your-data-store-id",
    "outputDataConfig": {
      "s3Configuration": {
        "S3Uri": "s3://amzn-s3-demo-bucket/EXPORT-JOB",
        "KmsKeyId": "arn:aws:kms:region-of-bucket:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab""
      }
    },
    "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role",
  }
}
```