

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

# HealthLake の FHIR `$inquire`オペレーション
<a name="reference-fhir-operations-inquire"></a>

`$inquire` オペレーションを使用すると、以前に送信された事前承認リクエストのステータスを確認できます。このオペレーションでは、[Da Vinci 事前認可サポート (PAS) 実装ガイド](https://hl7.org/fhir/us/davinci-pas/)を実装し、現在の認可決定を取得するための標準化された FHIR ベースのワークフローを提供します。

## 仕組み
<a name="inquire-how-it-works"></a>
+ **問い合わせの送信**: 確認したいクレームとサポート情報を含む FHIR バンドルを送信する
+ **検索**: HealthLake は、データストア内の対応する ClaimResponse を検索します。
+ **取得**: 最新の認可ステータスが取得されます
+ **応答**: 現在の認可ステータス (キューに入れられた、承認された、拒否されたなど) の即時応答を受け取ります。

**注記**  
`$inquire` は、既存の認可ステータスを取得する**読み取り専用オペレーション**です。データストア内のリソースは変更または更新されません。

## API エンドポイント
<a name="inquire-api-endpoint"></a>

```
POST /datastore/{datastoreId}/r4/Claim/$inquire  
Content-Type: application/fhir+json
```

## リクエスト構造
<a name="inquire-request-structure"></a>

### バンドルの要件
<a name="inquire-bundle-requirements"></a>

リクエストは、以下を含む FHIR Bundle リソースである必要があります。
+ **Bundle.type**: である必要があります `"collection"`
+ **Bundle.entry**: 以下を含むクレームリソースを **1** つだけ含める必要があります。
  + `use = "preauthorization"`
  + `status = "active"`
+ **参照リソース**: クレームによって参照されるすべてのリソースをバンドルに含める必要があります

**Query-by-Example**  
入力バンドルのリソースは検索テンプレートとして機能します。HealthLake は、提供された情報を使用して、対応する ClaimResponse を見つけます。

### 必要なリソース
<a name="inquire-required-resources"></a>


| [リソース]  | カーディナリティ | プロファイル | 説明 | 
| --- | --- | --- | --- | 
| クレーム | 1 | PAS クレームの照会 | 照会する以前の認可 | 
| 患者 | 1 | PAS 受取人患者 | 患者の人口統計情報 | 
| 組織 (保険者) | 1 | PAS 保険会社組織 | 保険会社 | 
| 組織 (プロバイダー) | 1 | PAS リクエスト組織 | リクエストを送信した医療プロバイダー | 

### 重要な検索条件
<a name="inquire-search-criteria"></a>

HealthLake は、以下を使用して ClaimResponse を検索します。
+ クレームからの**患者リファレンス** 
+ クレームからの**保険者リファレンス** 
+ クレームからの**プロバイダーリファレンス** 
+ クレームから**作成日** (時間フィルターとして)

**患者固有のクエリのみ**  
すべての問い合わせは、特定の患者に関連付ける必要があります。患者識別を使用しないシステム全体のクエリは許可されません。

## リクエスト例
<a name="inquire-example-request"></a>

```
POST /datastore/example-datastore/r4/Claim/$inquire  
Content-Type: application/fhir+json  
Authorization: Bearer <your-token>  
  
{  
  "resourceType": "Bundle",  
  "id": "PASClaimInquiryBundleExample",  
  "meta": {  
    "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-pas-inquiry-request-bundle"]  
  },  
  "identifier": {  
    "system": "http://example.org/SUBMITTER_TRANSACTION_IDENTIFIER",  
    "value": "5269368"  
  },  
  "type": "collection",  
  "timestamp": "2005-05-02T14:30:00+05:00",  
  "entry": [  
    {  
      "fullUrl": "http://example.org/fhir/Claim/MedicalServicesAuthorizationExample",  
      "resource": {  
        "resourceType": "Claim",  
        "id": "MedicalServicesAuthorizationExample",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim-inquiry"]  
        },  
        "status": "active",  
        "type": {  
          "coding": [{  
            "system": "http://terminology.hl7.org/CodeSystem/claim-type",  
            "code": "professional"  
          }]  
        },  
        "use": "preauthorization",  
        "patient": {  
          "reference": "Patient/SubscriberExample"  
        },  
        "created": "2005-05-02T11:01:00+05:00",  
        "insurer": {  
          "reference": "Organization/InsurerExample"  
        },  
        "provider": {  
          "reference": "Organization/UMOExample"  
        }  
      }  
    },  
    {  
      "fullUrl": "http://example.org/fhir/Patient/SubscriberExample",  
      "resource": {  
        "resourceType": "Patient",  
        "id": "SubscriberExample",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary"]  
        },  
        "name": [{  
          "family": "SMITH",  
          "given": ["JOE"]  
        }],  
        "gender": "male"  
      }  
    },  
    {  
      "fullUrl": "http://example.org/fhir/Organization/UMOExample",  
      "resource": {  
        "resourceType": "Organization",  
        "id": "UMOExample",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-requestor"]  
        },  
        "name": "Provider Organization"  
      }  
    },  
    {  
      "fullUrl": "http://example.org/fhir/Organization/InsurerExample",  
      "resource": {  
        "resourceType": "Organization",  
        "id": "InsurerExample",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer"]  
        },  
        "name": "Insurance Company"  
      }  
    }  
  ]  
}
```

## レスポンスの形式
<a name="inquire-response-format"></a>

### 成功レスポンス (200 OK)
<a name="inquire-success-response"></a>

PAS Inquiry Response Bundle には、以下が含まれています。
+ 現在の認可ステータスの **ClaimResponse**。検索条件に一致する場合は複数の **ClaimResponse** 
+ リクエストのすべての元のリソース (エコーバック)
+ レスポンスがアセンブルされた時刻のタイムスタンプ

**考えられる ClaimResponse の結果**  



| 結果 | 説明 | 
| --- | --- | 
| queued | 承認リクエストはまだレビュー保留中です | 
| complete | 認可の決定が行われました (承認/拒否dispositionを確認してください) | 
| error | 処理中にエラーが発生しました | 
| partial | 部分的な認可が付与されました | 

```
{  
  "resourceType": "Bundle",  
  "identifier": {  
        "system": "http://example.org/SUBMITTER_TRANSACTION_IDENTIFIER",  
        "value": "5269367"  
  },  
  "type": "collection",  
  "timestamp": "2005-05-02T14:30:15+05:00",  
  "entry": [  
    {  
      "fullUrl": "http://example.org/fhir/ClaimResponse/InquiryResponseExample",  
      "resource": {  
        "resourceType": "ClaimResponse",  
        "id": "InquiryResponseExample",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claimresponse-inquiry"]  
        },  
        "status": "active",  
        "type": {  
          "coding": [{  
            "system": "http://terminology.hl7.org/CodeSystem/claim-type",  
            "code": "professional"  
          }]  
        },  
        "use": "preauthorization",  
        "patient": {  
          "reference": "Patient/SubscriberExample"  
        },  
        "created": "2005-05-02T11:05:00+05:00",  
        "insurer": {  
          "reference": "Organization/InsurerExample"  
        },  
        "request": {  
          "reference": "Claim/MedicalServicesAuthorizationExample"  
        },  
        "outcome": "complete",  
        "disposition": "Approved",  
        "preAuthRef": "AUTH12345"  
      }  
    },  
    {  
      "fullUrl": "http://example.org/fhir/Claim/MedicalServicesAuthorizationExample",  
      "resource": {  
        "resourceType": "Claim",  
        "id": "MedicalServicesAuthorizationExample",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-claim-inquiry"]  
        },  
        "status": "active",  
        "type": {  
          "coding": [{  
            "system": "http://terminology.hl7.org/CodeSystem/claim-type",  
            "code": "professional"  
          }]  
        },  
        "use": "preauthorization",  
        "patient": {  
          "reference": "Patient/SubscriberExample"  
        },  
        "created": "2005-05-02T11:01:00+05:00",  
        "insurer": {  
          "reference": "Organization/InsurerExample"  
        },  
        "provider": {  
          "reference": "Organization/UMOExample"  
        }  
      }  
    },  
    {  
      "fullUrl": "http://example.org/fhir/Patient/SubscriberExample",  
      "resource": {  
        "resourceType": "Patient",  
        "id": "SubscriberExample",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-beneficiary"]  
        },  
        "name": [{  
          "family": "SMITH",  
          "given": ["JOE"]  
        }],  
        "gender": "male"  
      }  
    },  
    {  
      "fullUrl": "http://example.org/fhir/Organization/UMOExample",  
      "resource": {  
        "resourceType": "Organization",  
        "id": "UMOExample",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-requestor"]  
        },  
        "name": "Provider Organization"  
      }  
    },  
    {  
      "fullUrl": "http://example.org/fhir/Organization/InsurerExample",  
      "resource": {  
        "resourceType": "Organization",  
        "id": "InsurerExample",  
        "meta": {  
          "profile": ["http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-insurer"]  
        },  
        "name": "Insurance Company"  
      }  
    }  
  ]  
}
```

## エラーレスポンス
<a name="inquire-error-responses"></a>

### 400 Bad Request
<a name="inquire-400-error"></a>

リクエスト形式が無効であるか、検証が失敗した場合に返されます。

```
{  
    "resourceType": "OperationOutcome",  
    "issue": [  
        {  
            "severity": "error",  
            "code": "required",  
            "diagnostics": "Reference 'Patient/SubscriberExample' at path 'patient' for 'CLAIM' resource not found(at Bundle.entry[0].resource)"  
        }  
    ]  
}
```

### 401 Unauthorized
<a name="inquire-401-error"></a>

認証情報がないか無効である場合に返されます。

```
{  
    "resourceType": "OperationOutcome",  
    "issue": [  
        {  
            "severity": "error",  
            "code": "forbidden",  
            "diagnostics": "Invalid authorization header"  
        }  
    ]  
}
```

### 403 Forbidden
<a name="inquire-403-error"></a>

認証されたユーザーに、リクエストされたリソースへのアクセス許可がない場合に返されます。

```
{  
    "resourceType": "OperationOutcome",  
    "issue": [  
        {  
            "severity": "error",  
            "code": "exception",  
            "diagnostics": "Insufficient SMART scope permissions."  
        }  
    ]  
}
```

### 400 見つからない場合
<a name="inquire-400-none-found"></a>

問い合わせに一致する ClaimResponse が見つからない場合に返されます。

```
{  
  "resourceType": "OperationOutcome",
  "issue": [{
    "severity": "error",
    "code": "not-found",
    "diagnostics": "Resource not found. No ClaimResponse found from the input Claim that matches the specified Claim properties patient, insurer, provider, and created(at Bundle.entry[0].resource)"
  }]
}
```

### 415 サポートされていないメディアタイプ
<a name="inquire-415-error"></a>

Content-Type ヘッダーが application/fhir\$1json でない場合に返されます。

```
{  
  "resourceType": "OperationOutcome",  
  "issue": [{  
    "severity": "error",  
    "code": "value",  
    "diagnostics": "Incorrect MIME-type. Update request Content-Type header."  
  }]  
}
```

### 429 Too Many Requests
<a name="inquire-429-error"></a>

レート制限を超えたときに返されます。

```
{  
  "resourceType": "OperationOutcome",  
  "issue": [{  
    "severity": "error",  
    "code": "throttled",  
    "diagnostics": "Rate limit exceeded. Please retry after some time."  
  }]  
}
```

## 検証ルール
<a name="inquire-validation-rules"></a>

HealthLake は、問い合わせに対して包括的な検証を実行します。

### バンドルの検証
<a name="inquire-bundle-validation"></a>
+ PAS 照会リクエストバンドルプロファイルに準拠する必要があります
+ `Bundle.type` は である必要があります `"collection"`
+ クレームリソースを 1 つだけ含める必要があります
+ 参照されるすべてのリソースをバンドルに含める必要があります

### クレームの検証
<a name="inquire-claim-validation"></a>
+ PAS クレーム照会プロファイルに準拠する必要があります
+ `Claim.use` は である必要があります `"preauthorization"`
+ `Claim.status` は である必要があります `"active"`
+ 必須フィールド: `patient`、`insurer`、`provider`、 `created`

### リソースの検証
<a name="inquire-resource-validation"></a>
+ すべてのリソースは、それぞれの PAS 問い合わせプロファイルに準拠する必要があります
+ 必要なサポートリソースが存在する必要があります (「」、「保険組織」、「プロバイダー組織」)
+ クロスリファレンスは、バンドル内で有効で解決可能である必要があります

## パフォーマンス仕様
<a name="inquire-performance-specs"></a>


| メトリクス |  の仕様 | 
| --- | --- | 
| リソース数の制限 | バンドルあたり 500 リソース | 
| バンドルサイズ制限 | 最大 5 MB | 

## 必要なアクセス許可
<a name="inquire-required-permissions"></a>

`$inquire` オペレーションを使用するには、IAM ロールに次のものがあることを確認します。
+ `healthlake:InquirePreAuthClaim` - オペレーションを呼び出すには

**FHIR スコープでの SMART**  
**最低限必要なスコープ:**
+ **SMART v1**: `user/ClaimResponse.read`
+ **SMART v2**: `user/ClaimResponse.s`

## 重要な実装上の注意事項
<a name="inquire-implementation-notes"></a>

### 検索動作
<a name="inquire-search-behavior"></a>

問い合わせを送信すると、HealthLake は以下を使用して ClaimResponse を検索します。
+ 入力クレームからの**患者リファレンス** 
+ 入力クレームからの**保険者リファレンス** 
+ 入力クレームからの**プロバイダーリファレンス** 
+ 入力クレームから**作成日** (タイムフィルターとして)

**複数の一致**: 複数の ClaimResponses が検索条件に一致する場合、HealthLake は一致するすべての結果を返します。最新の`ClaimResponse.created`ステータスを特定するには、最新のタイムスタンプを使用する必要があります。

### クレームの更新
<a name="inquire-updated-claims"></a>

同じ事前承認 (クレーム v1.1、v1.2、v1.3 など) に複数の更新を送信した場合、`$inquire`オペレーションは提供された検索条件に基づいて**最新バージョン**に関連付けられた ClaimResponse を取得します。

### 読み取り専用オペレーション
<a name="inquire-read-only"></a>

`$inquire` オペレーション:
+ 既存の認可ステータス****を取得します
+ 最新の ClaimResponse ****を返します
+ リソースを変更または更新**しない** 
+ 新しいリソースを作成し**ない** 
+ 新しい認可処理**をトリガーしない** 

## ワークフローの例
<a name="inquire-workflow-example"></a>

**一般的な事前認可照会ワークフロー**  


```
1. Provider submits PA request  
   POST /Claim/$submit  
   → Returns ClaimResponse with outcome="queued"  
  
2. Payer reviews request (asynchronous)  
   → Updates ClaimResponse status internally  
  
3. Provider checks status  
   POST /Claim/$inquire  
   → Returns ClaimResponse with outcome="queued" (still pending)  
  
4. Provider checks status again later  
   POST /Claim/$inquire  
   → Returns ClaimResponse with outcome="complete", disposition="Approved"
```

## 関連の オペレーション
<a name="inquire-related-operations"></a>
+ `Claim/$submit` - 新しい事前承認リクエストを送信するか、既存の承認リクエストを更新します。
+ `Patient/$everything` - 事前認可コンテキストの包括的な患者データを取得する