Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerCAQH Connector v1.0
Council for Affordable Quality Healthcare 用 Anypoint Connector (CAQH Connector) は、ヘルスケア提供者の情報を収集、保存、監視、検証する非営利団体にアクセス権を提供します。
CAQH ProView® は、広範な人口統計情報や専門的な情報を自己報告したり、ヘルスケア組織と共有したりするために多くの提供者が使用する Web ベースのソリューションです。提供者のディレクトリの精度を確保する CAQH DirectAssure® は、CAQH ProView と連携して機能するため、提供者は 1 か所でディレクトリ情報を更新し、参加組織と共有できます。
CAQH ProView および DirectAssure API により、ユーザーは信任や他の目的で提供者に関する情報をリアルタイムに取得できます。参加組織 (PO) は、API を使用して CAQH ProView の名簿に提供者を追加できます。CAQH Connector は、CAQH ProView および DirectAssure API へのアクセスを簡素化し、複雑なインテグレーションを視覚的に定義して、高度な提供者管理と信任を行います。
リリースノート: CAQH Connector リリースノート
Exchange: CAQH Connector
この情報を使用するには、CAQH ProView、DirectAssure、Mule の概念、Anypoint Connector、Anypoint Studio、Mule フローの要素、グローバル要素に精通している必要があります。 API は、ユーザー名とパスワードに基づく基本認証を使用します。 このコネクタを使用するには、CAQH アカウントとログイン情報が必要になります。
Maven で CAQH Connector を使用する方法については、Anypoint Exchange の CAQH Connector のページの [Dependency Snippets (連動関係スニペット)] タブで連動関係情報を参照してください。
<dependency>
<groupId>com.mulesoft.connectors</groupId>
<artifactId>mule-caqh-connector</artifactId>
<version>x.x.x</version>
<classifier>mule-plugin</classifier>
</dependency>
x.x.x
を使用しているコネクタに対応するバージョンに置き換えます。
最新の pom.xml
ファイル情報を取得するには、 Anypoint Exchange でコネクタにアクセスし、[Dependency Snippets (連動関係スニペット)] をクリックします。
Anypoint Studio には、Studio プロジェクトにコネクタを追加する 2 つの方法があります。Studio タスクバーの Exchange ボタンから追加するか、[Mule Palette (Mule パレット)] ビューから追加します。
Studio で Mule プロジェクトを作成します。
Studio タスクバーの左上にある Exchange アイコン (X) をクリックします。
Exchange で、[Login (ログイン)] をクリックし、Anypoint Platform のユーザー名とパスワードを指定します。
Exchange で、「CAQH」を検索します。
コネクタを選択して [Add to project (プロジェクトに追加)] をクリックします。
画面の指示に従ってコネクタをインストールします。
Studio で Mule プロジェクトを作成します。
[Mule Palette (Mule パレット)] ビューで、[(X) Search in Exchange ((X) Exchange 内を検索)] をクリックします。
[Add Modules to Project (モジュールをプロジェクトに追加)] で、検索項目に「CAQH」と入力します。
[Available modules (使用可能なモジュール)] で、このコネクタの名前をクリックします。
[Add (追加)] をクリックします。
[Finish (完了)] をクリックします。
Anypoint Studio の [Mule Palette (Mule パレット)] ビューからキャンバスにコネクタをドラッグすると、自動的にコネクタの名前空間、スキーマの場所、および POM ファイルの XML コードが入力されます。Studio 外でアプリケーションを作成する場合は、XML で次の情報を使用します。
名前空間: http://www.mulesoft.org/schema/mule/caqh
スキーマの場所: http://www.mulesoft.org/schema/mule/caqh/current/mule-caqh.xsd
Anypoint Studio で、新しい Mule プロジェクトを作成します。HTTP リスナーが設定されていることを確認します。
コネクタを Studio キャンバスにドラッグします。
コネクタのグローバル要素を設定します。ログイン情報をグローバル設定プロパティとして入力するか、それらの値を含む設定ファイルを参照することができます。 メンテナンスをシンプルにして、プロジェクトを再利用できるようにするために、設定ファイルを使用することをお勧めします。
Address (アドレス): CAQH API にアクセスするための URL
Username (ユーザー名): CAQH API にアクセスするためのユーザー名
Password (パスワード): CAQH API にアクセスするためのパスワード
CAQH のサンプル設定ファイルは src/main/resources/configuration.yml から入手できます。このファイルは、[Global Configuration Elements (グローバル設定要素)] の [Configuration Properties (設定プロパティ)] に追加できます。
|
接続が成功することを確認するには、[Test Connection (接続をテスト)] をクリックします。
コネクタ操作を選択します。
次のユースケースは、このコネクタを使用して以下の操作を行う方法を示しています。
ProView を使用して Salesforce から CAQH に提供者を更新する
ProView を使用して名簿から提供者を削除する
これらのユースケース例をテストする手順は、次のとおりです。
Mule アプリケーションを作成し、src/main/resources
の設定ファイルでコネクタ設定プロパティを設定します。たとえば、次のようにします。
caqh:
address: "<url-to-access-caqh-api>"
user: "<username-to-access-caqh-api>"
password: "<password-to-access-caqh-api>"
CAQH Connector の設定ファイルを [Global Configuration Elements (グローバル設定要素)] の [Configuration Properties (設定プロパティ)] に追加します。
この例では、Mule アプリケーションが Salesforce 取引先責任者を照会して提供者を見つけます。次に、CAQH の提供者の状況を更新し、更新要求の状況を取得します。
Mule アプリケーションで、次の操作を行います。
HTTP リスナーをキャンバスにドラッグして設定します。
[Palette (パレット)] から Salesforce Connector を検索して [Query] 操作をドラッグします。
このデモの目的を達成するために、次のクエリを使用して、Salesforce から取引先責任者を取得します。
SELECT firstName, LastName, Id,
CAQH_Provider_ID__c,
SF_Provider_ID__c,
CAQH_organization_id__c,
Provider_name__c,
caqh_batch_id__c
from CONTACT
where name = ':name'
[Transform Message] を選択してキャンバスのフローにドラッグし、CAQH Connector 用の入力を準備します。
output application/java
---
[{
"caqh_provider_id": payload[0].CAQH_Provider_ID__c,
"organization_id": payload[0].CAQH_organization_id__c,
"po_provider_id": payload[0].Id,
"last_recredential_date": "",
"next_recredential_date": "05/05/2019",
"delegation_flag": "Y",
"application_type": "A",
"affiliation_flag": ""
}]
リスナーの後に Update Providers - ProView (PUT)
コネクタ操作を使用し、作成したコネクタ設定を選択します。
コネクタ設定の [General (一般)] セクションを payload
に設定します。
[Advanced (詳細)] セクションの [Target Value (対象値)] を #[payload]
に設定します。
CAQH の提供者を更新するのに数分かかるため、別の Transform Message コンポーネントを使用して 1 分以上の待機時間を追加します。
%dw 2.0
import * from dw::Runtime
output application/json
---
payload
wait 60000
更新要求が成功したかどうかをチェックするには、[Get Status - Update to Roster
] 操作を [Transform Message] の後にドラッグします。
操作設定の [General (一般)] セクションで、次の操作を行います。
[Batch_id] を #[payload.batch_Id]
に設定します。
[Advanced (詳細)] セクションの [Target Value (対象値)] を #[payload]
に設定します。
フローの最後に [Transform Message] コンポーネントを追加して、出力メッセージを JSON 形式に変換します。Transform Message の出力を次のように設定します。
%dw 2.0
output application/json
---
payload
アプリケーションを実行し、ブラウザーで http://localhost:8081/update-provider
を参照します。
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
xmlns:caqh="http://www.mulesoft.org/schema/mule/caqh"
xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/caqh
http://www.mulesoft.org/schema/mule/caqh/current/mule-caqh.xsd
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
<flow name="UPDATE_PROVIDER_SALESFORCE_TO_CAQH">
<http:listener
doc:name="update-provider"
config-ref="HTTP_Listener_config1"
path="/UpdateProviderFlow"/>
<salesforce:query doc:name="Query Salesforce Contact" config-ref="Salesforce_Config">
<salesforce:salesforce-query >SELECT firstName, LastName, Id,CAQH_Provider_ID__c,SF_Provider_ID__c,CAQH_organization_id__c,Provider_name__c,caqh_batch_id__c from CONTACT where name = ':name'
</salesforce:salesforce-query>
<salesforce:parameters ><![CDATA[#[output application/java
---
{
name : "kiuwxinj xwehonru"
}]]]></salesforce:parameters>
</salesforce:query>
<ee:transform doc:name="">
<ee:message >
<ee:set-payload ><![CDATA[output application/java
---
[{
"caqh_provider_id": payload[0].CAQH_Provider_ID__c,
"organization_id": payload[0].CAQH_organization_id__c,
"po_provider_id": payload[0].Id,
"last_recredential_date": "",
"next_recredential_date": "05/05/2019",
"delegation_flag": "Y",
"application_type": "A",
"affiliation_flag": ""
}]
]]> </ee:set-payload>
</ee:message>
</ee:transform>
<caqh:update-to-roster-request-pv-by-put-request
doc:name="Update Providers to Roster - Proview"
config-ref="CAQH_Config1">
</caqh:update-to-roster-request-pv-by-put-request>
<ee:transform doc:name="Wait for 1 Minute">
<ee:message >
<ee:set-payload ><![CDATA[%dw 2.0
import * from dw::Runtime
output application/json
---
payload
wait 60000]]></ee:set-payload>
</ee:message>
</ee:transform>
<caqh:get-result-of-update-request
doc:name="Get status of update to roster request"
config-ref="CAQH_Config1"
batch_id="#[payload.batch_Id]" />
<ee:transform doc:name="Transform CAQH response to JSON">
<ee:message >
<ee:set-payload ><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
</ee:message>
</ee:transform>
</flow>
</mule>
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
xmlns:caqh="http://www.mulesoft.org/schema/mule/caqh"
xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/caqh
http://www.mulesoft.org/schema/mule/caqh/current/mule-caqh.xsd
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd">
<flow name="DELETE_SALESFORCE_PROVIDER_FROM_ROSTER">
<http:listener
doc:name="Listener"
config-ref="HTTP_Listener_config1"
path="/deleteProviderFlow"/>
<salesforce:query
doc:name="Query Salesforce Contacts"
config-ref="Salesforce_Config">
<salesforce:salesforce-query >SELECT firstName, LastName, Id,CAQH_Provider_ID__c,SF_Provider_ID__c,CAQH_organization_id__c,Provider_name__c,caqh_batch_id__c from CONTACT where name = ':name'</salesforce:salesforce-query>
<salesforce:parameters ><![CDATA[#[output application/java
---
{
name : "kiuwxinj xwehonru"
}]]]></salesforce:parameters>
</salesforce:query>
<ee:transform doc:name="Mapping from Salesforce to CAQH">
<ee:message >
<ee:set-payload ><![CDATA[%dw 2.0
output application/java
---
[{
"caqh_provider_id": payload[0].CAQH_Provider_ID__c,
"organization_id": payload[0].CAQH_organization_id__c
}]]]></ee:set-payload>
</ee:message>
</ee:transform>
<caqh:delete-from-roster-request-pv
doc:name="Delete provider from roster using ProView"
config-ref="CAQH_Config1">
</caqh:delete-from-roster-request-pv>
<ee:transform doc:name="Wait for 1 Minute">
<ee:message >
<ee:set-payload ><![CDATA[%dw 2.0
import * from dw::Runtime
output application/json
---
payload
wait 60000]]></ee:set-payload>
</ee:message>
</ee:transform>
<caqh:get-result-of-delete-request
doc:name="Get status of delete from roster request"
config-ref="CAQH_Config1"
batch_id="#[payload.batch_Id]" />
<ee:transform doc:name="Transform CAQH response to JSON">
<ee:message >
<ee:set-payload ><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
</ee:message>
</ee:transform>
</flow>
</mule>