翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
HealthLake の FHIR $inquireオペレーション
$inquire オペレーションを使用すると、以前に送信された事前承認リクエストのステータスを確認できます。このオペレーションでは、Da Vinci 事前認可サポート (PAS) 実装ガイド
仕組み
-
問い合わせの送信: 確認したいクレームとサポート情報を含む FHIR バンドルを送信する
-
検索: HealthLake は、データストア内の対応する ClaimResponse を検索します。
-
取得: 最新の認可ステータスが取得されます
-
応答: 現在の認可ステータス (キューに入れられた、承認された、拒否されたなど) の即時応答を受け取ります。
注記
$inquire は、既存の認可ステータスを取得する読み取り専用オペレーションです。データストア内のリソースは変更または更新されません。
API エンドポイント
POST /datastore/{datastoreId}/r4/Claim/$inquire Content-Type: application/fhir+json
リクエスト構造
バンドルの要件
リクエストは、以下を含む FHIR Bundle リソースである必要があります。
-
Bundle.type: である必要があります
"collection" -
Bundle.entry: 以下を含むクレームリソースを 1 つだけ含める必要があります。
-
use = "preauthorization" -
status = "active"
-
-
参照リソース: クレームによって参照されるすべてのリソースをバンドルに含める必要があります
Query-by-Example
入力バンドルのリソースは検索テンプレートとして機能します。HealthLake は、提供された情報を使用して、対応する ClaimResponse を見つけます。
必要なリソース
| [リソース] | カーディナリティ | プロファイル | 説明 |
|---|---|---|---|
| クレーム | 1 | PAS クレームの照会 | 照会する以前の認可 |
| 患者 | 1 | PAS 受取人患者 | 患者の人口統計情報 |
| 組織 (保険者) | 1 | PAS 保険会社組織 | 保険会社 |
| 組織 (プロバイダー) | 1 | PAS リクエスト組織 | リクエストを送信した医療プロバイダー |
重要な検索条件
HealthLake は、以下を使用して ClaimResponse を検索します。
-
クレームからの患者リファレンス
-
クレームからの保険者リファレンス
-
クレームからのプロバイダーリファレンス
-
クレームから作成日 (時間フィルターとして)
患者固有のクエリのみ
すべての問い合わせは、特定の患者に関連付ける必要があります。患者識別を使用しないシステム全体のクエリは許可されません。
リクエスト例
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" } } ] }
レスポンスの形式
成功レスポンス (200 OK)
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" } } ] }
エラーレスポンス
400 Bad Request
リクエスト形式が無効であるか、検証が失敗した場合に返されます。
{ "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
認証情報がないか無効である場合に返されます。
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "forbidden", "diagnostics": "Invalid authorization header" } ] }
403 Forbidden
認証されたユーザーに、リクエストされたリソースへのアクセス許可がない場合に返されます。
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "exception", "diagnostics": "Insufficient SMART scope permissions." } ] }
400 見つからない場合
問い合わせに一致する 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 サポートされていないメディアタイプ
Content-Type ヘッダーが application/fhir+json でない場合に返されます。
{ "resourceType": "OperationOutcome", "issue": [{ "severity": "error", "code": "value", "diagnostics": "Incorrect MIME-type. Update request Content-Type header." }] }
429 Too Many Requests
レート制限を超えたときに返されます。
{ "resourceType": "OperationOutcome", "issue": [{ "severity": "error", "code": "throttled", "diagnostics": "Rate limit exceeded. Please retry after some time." }] }
検証ルール
HealthLake は、問い合わせに対して包括的な検証を実行します。
バンドルの検証
-
PAS 照会リクエストバンドルプロファイルに準拠する必要があります
-
Bundle.typeは である必要があります"collection" -
クレームリソースを 1 つだけ含める必要があります
-
参照されるすべてのリソースをバンドルに含める必要があります
クレームの検証
-
PAS クレーム照会プロファイルに準拠する必要があります
-
Claim.useは である必要があります"preauthorization" -
Claim.statusは である必要があります"active" -
必須フィールド:
patient、insurer、provider、created
リソースの検証
-
すべてのリソースは、それぞれの PAS 問い合わせプロファイルに準拠する必要があります
-
必要なサポートリソースが存在する必要があります (「」、「保険組織」、「プロバイダー組織」)
-
クロスリファレンスは、バンドル内で有効で解決可能である必要があります
パフォーマンス仕様
| メトリクス | の仕様 |
|---|---|
| リソース数の制限 | バンドルあたり 500 リソース |
| バンドルサイズ制限 | 最大 5 MB |
必要なアクセス許可
$inquire オペレーションを使用するには、IAM ロールに次のものがあることを確認します。
-
healthlake:InquirePreAuthClaim- オペレーションを呼び出すには
FHIR スコープでの SMART
最低限必要なスコープ:
-
SMART v1:
user/ClaimResponse.read -
SMART v2:
user/ClaimResponse.s
重要な実装上の注意事項
検索動作
問い合わせを送信すると、HealthLake は以下を使用して ClaimResponse を検索します。
-
入力クレームからの患者リファレンス
-
入力クレームからの保険者リファレンス
-
入力クレームからのプロバイダーリファレンス
-
入力クレームから作成日 (タイムフィルターとして)
複数の一致: 複数の ClaimResponses が検索条件に一致する場合、HealthLake は一致するすべての結果を返します。最新のClaimResponse.createdステータスを特定するには、最新のタイムスタンプを使用する必要があります。
クレームの更新
同じ事前承認 (クレーム v1.1、v1.2、v1.3 など) に複数の更新を送信した場合、$inquireオペレーションは提供された検索条件に基づいて最新バージョンに関連付けられた ClaimResponse を取得します。
読み取り専用オペレーション
$inquire オペレーション:
-
既存の認可ステータスを取得します
-
最新の ClaimResponse を返します
-
リソースを変更または更新しない
-
新しいリソースを作成しない
-
新しい認可処理をトリガーしない
ワークフローの例
一般的な事前認可照会ワークフロー
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"
関連の オペレーション
-
Claim/$submit- 新しい事前承認リクエストを送信するか、既存の承認リクエストを更新します。 -
Patient/$everything- 事前認可コンテキストの包括的な患者データを取得する