Roostify Connector v1.0
Roostify 用 Anypoint Connector (Roostify Connector) により、顧客は完成したローンアプリケーションから、DBA、支店、またはチャネルに合わせて最適化された、直感的なデジタルユーザーエクスペリエンスを生み出すことができます。これによってローンの実行率が向上し、ビジネス要件に拡張に合わせた柔軟性と拡張性の高いフレームワークが提供されます。Roostify の統合プラットフォームは、ローン契約を迅速化し、ローン会社が顧客の開拓と管理を同時に行えるようにします。この結果、収益性に加えて、顧客の定着率や紹介率も高まります。
Roostify Connector は、Roostify の 46 の API へのアクセスを簡素化し、以下に関連するワークフローをサポートします。
-
Access Control (アクセスコントロール)
-
アカウント
-
Desktop Underwriter レポート
-
Documents (ドキュメント)
-
リード (ドラフト)
-
ローンアプリケーション
-
Messages
-
商品 (ドラフト)
-
参照 ID
-
API を使用した
-
設定
-
状態変更
-
状況更新
-
タスク
-
ユーザー管理
-
ユーザー設定
-
Web フックイベント
-
Web フック
リリースノート: Roostify Connector リリースノート
Exchange: Roostify Connector
始める前に
この情報を使用するには、Roostify、Mule の概念、Anypoint Connector、Anypoint Studio、Mule フローの要素、グローバル要素に精通している必要があります。
API は、ユーザー名とパスワードに基づく基本認証を使用します。コネクタを使用するには、Roostify のアカウントとログイン情報が必要です。ユーザー名はアカウントトークン、パスワードはサービスアクセストークンとして機能します。ユーザー名とパスワードは、認証ヘッダー内の Basic という単語に続いて base64 でエンコードされた文字列として格納され、account-token:service-access-token の形式でデコードされます。
ソフトウェアの要件および互換性については、「コネクタリリースノート」を参照してください。
POM ファイル情報
<dependency>
<groupId>com.mulesoft.connectors</groupId>
<artifactId>mule-roostify-connector</artifactId>
<version>x.x.x</version>
<classifier>mule-plugin</classifier>
</dependency>
x.x.x を使用しているコネクタに対応するバージョンに置き換えます。
最新の pom.xml ファイル情報を取得するには、 Anypoint Exchange でコネクタにアクセスし、[Dependency Snippets (連動関係スニペット)] をクリックします。
Studio プロジェクトへのコネクタの追加
Anypoint Studio には、Studio プロジェクトにコネクタを追加する 2 つの方法があります。Studio タスクバーの Exchange ボタンから追加するか、[Mule Palette (Mule パレット)] ビューから追加します。
Exchange を使用してコネクタを追加する
-
Studio で Mule プロジェクトを作成します。
-
Studio タスクバーの左上にある Exchange アイコン (X) をクリックします。
-
Exchange で、[Login (ログイン)] をクリックし、Anypoint Platform のユーザー名とパスワードを指定します。
-
Exchange で、「roostify」を検索します。
-
コネクタを選択して [Add to project (プロジェクトに追加)] をクリックします。
-
画面の指示に従ってコネクタをインストールします。
Studio でコネクタに追加する
-
Studio で Mule プロジェクトを作成します。
-
[Mule Palette (Mule パレット)] ビューで、[(X) Search in Exchange ((X) Exchange 内を検索)] をクリックします。
-
[Add Modules to Project (モジュールをプロジェクトに追加)] で、検索項目に「roostify」と入力します。
-
[Available modules (使用可能なモジュール)] で、このコネクタの名前をクリックします。
-
[Add (追加)] をクリックします。
-
[Finish (完了)] をクリックします。
コネクタの名前空間とスキーマ
Anypoint Studio でアプリケーションデザインするときに、パレットのコネクタをキャンバスにドラッグします。 このアクションにより、自動的に XML コードにコネクタの名前空間およびスキーマの場所が入力されます。
-
名前空間:
http://www.mulesoft.org/schema/mule/roostify -
スキーマの場所:
http://www.mulesoft.org/schema/mule/roostify/current/mule-roostify.xsd
Anypoint Studio で Roostify Connector を設定する
-
Anypoint Studio で、新しい Mule プロジェクトを作成します。HTTP リスナーが設定されていることを確認します。
-
コネクタを Studio キャンバスにドラッグします。
-
コネクタのグローバル要素を設定します。ログイン情報をグローバル設定プロパティとして入力するか、それらの値を含む設定ファイルを参照することができます。 メンテナンスをシンプルにして、プロジェクトを再利用できるようにするために、設定ファイルを使用することをお勧めします。
-
Address (アドレス): Roostify API にアクセスするための URI
-
Username (ユーザー名): Roostify API にアクセスするためのユーザー名
-
Password (パスワード): Roostify API にアクセスするためのパスワード
-
Version (バージョン): Roostify API バージョン。たとえば、API バージョンが
v1 であれば、このプロパティの値は /v1 でなければなりません。Roostify のサンプル設定ファイルは src/main/resources/configuration.yaml にあります。このファイルは、[Global Configuration Elements (グローバル設定要素)] の [Configuration Properties (設定プロパティ)] に追加できます。
-
-
接続が成功することを確認するには、[Test Connection (接続をテスト)] をクリックします。
-
コネクタ操作を選択します。
ユースケース: Roostify ユーザーとローンアプリケーションの作成
以下のユースケースでは、Roostify Connector を Salesforce Connector と一緒に使用することで、次の作業を行います。
-
Roostify で Salesforce アカウント用のユーザーを作成する
-
Roostify で同じユーザー用のローンアプリケーションを作成する
この例では、Mule アプリケーションが Salesforce アカウントに対してクエリを実行し、このアカウント用のユーザーを Roostify で作成します。フローの次のステップでは、この新しいユーザー用のローンアプリケーションを Roostify で作成します。
このユースケースをテストする手順は、次のとおりです。
-
Mule アプリケーションを作成し、
src/main/resources の設定ファイルでコネクタ設定プロパティを設定します。次に例を示します。rsf: address: "<url-to-access-roostify-api>" version: "/<roostify-api-version>" user: "<username-to-access-roostify-api>" password: "<password-to-access-roostify-api>" -
Roostify Connector 用の設定ファイルを [Global Element Properties (グローバル要素のプロパティ)] の [Configuration Properties (設定プロパティ)] に追加します。
新しい Mule アプリケーションフローを作成する手順は、次のとおりです。
-
HTTP リスナーをキャンバスにドラッグして設定します。
-
[Palette (パレット)] から Salesforce Connector を検索して [Query] 操作をドラッグします。Salesforce 操作を設定するには、
-
[Salesforce query (Salesforce クエリ)] でクエリを追加します。このデモでは、次のクエリを使用して Salesforce からアカウントを取得します。
SELECT Id, AccountNumber, Phone, Name FROM Account where Id = ':sfId' -
[Parameters (パラメーター)] セクションで、[Name (名前)] を
sfId、[Value (値)] を attributes.queryParams.sfcId に設定してパラメーターを作成します。
-
-
Transform Message をキャンバス上のフローにドラッグして、Roostify Connector 用の入力を準備します。Transform Message の出力ペイロードの例を次に示します。
%dw 2.0 output application/json --- { user_role: "borrower", home_phone: payload.Phone[0], reference_id: "Test-ref-123", last_name: "Demo", account_id: payload.AccountNumber[0], job_title: "ADMIN", first_name: payload.Name[0], email: payload.Id[0] ++ "@roostify.com" } -
Roostify の操作から Create a User コネクタ操作をドラッグして、Transform Message の後ろに配置します。設定オプションで、次の操作を行います。
-
作成したコネクタ設定を選択します。
-
コネクタ設定の [General (一般)] セクションを
payload に設定します。 -
[Advanced (詳細)] セクションの [Target Value (対象値)] を
#[payload] に設定します。
-
-
Roostify から返されるユーザー ID を変数に取得するため、Mule パレットで Set Variable 操作を探して、Roostify 操作の後ろに配置します。Set Variable 操作の [Settings (設定)] セクションで、以下を設定します。
-
名前:
userId -
値:
#[payload.id]
-
-
Roostify 操作から Create a Loan Application 操作をドラッグします。設定オプションで、
-
次の「General (一般)」セクションの「Create loan request (ローン要求の作成)」にあるサンプルペイロードを使用します。
output application/json --- { reference_id: vars.refId, application_type: "purchase", loan_amount: 20000, down_payment: 1000, amortization_term: "30" } -
[Advanced (詳細)] セクションの [Target Value (対象値)] を
#[payload] に設定します。
-
-
Roostify から返されるローン ID を変数に取得するため、再び Mule パレットで Set Variable 操作を探して、Roostify 操作の後ろに配置します。Set Variable 操作の [Settings (設定)] セクションで、以下を設定します。
-
名前:
userId -
値:
#[payload.id]
-
-
別の Transform Message コンポーネントを使用して、JSON 形式で応答を表示します。Transform Message の出力ペイロードは、次のように設定できます。
%dw 2.0 output application/json --- { "RSF Account Id" : payload.account_id, "User Id" : vars.userId, "Loan Id" : vars.loanId } -
アプリケーションを実行し、ブラウザーで
http://localhost:8081/createLoanApplication を参照します。
ユースケース XML: Roostify ユーザーとローンアプリケーションの作成
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:salesforce="http://www.mulesoft.org/schema/mule/salesforce" xmlns:roostify="http://www.mulesoft.org/schema/mule/roostify"
xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
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/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/roostify
http://www.mulesoft.org/schema/mule/roostify/current/mule-roostify.xsd
http://www.mulesoft.org/schema/mule/salesforce
http://www.mulesoft.org/schema/mule/salesforce/current/mule-salesforce.xsd">
<flow name="CREATE_ROOSTIFY_USER_LOAN_APPLOCATION">
<http:listener doc:name="8081/createLoanApplication"
config-ref="HTTP_Listener_config" path="createLoanApplication"/>
<salesforce:query doc:name="Get Salesforce Account" config-ref="Salesforce_Config">
<salesforce:salesforce-query>SELECT Id, AccountNumber, Phone, Name FROM Account where Id = ':sfId'</salesforce:salesforce-query>
<salesforce:parameters><![CDATA[#[output application/java
---
{
"sfId" : attributes.queryParams.sfcId
}]]]></salesforce:parameters>
</salesforce:query>
<ee:transform doc:name="Convert to JSON">
<ee:message>
<ee:set-payload><![CDATA[%dw 2.0
output application/json
---
{
user_role: "borrower",
home_phone: payload.Phone[0],
reference_id: "Test-ref-123",
last_name: "Demo",
account_id: payload.AccountNumber[0],
job_title: "ADMIN",
first_name: payload.Name[0]
}]]></ee:set-payload>
</ee:message>
<ee:variables>
<ee:set-variable variableName="refId"><![CDATA[%dw 2.0
output application/java
---
{
"refId" : "Test-ref-123"
}]]></ee:set-variable>
</ee:variables>
</ee:transform>
<roostify:create-user doc:name="Create a User in Roostify" config-ref="Roostify_Config" />
<set-variable value="#[payload.id]" doc:name="Save User ID" variableName="userId" />
<roostify:creating-loan-application doc:name="Create a Loan Application in Roostify" config-ref="Roostify_Config">
<roostify:create-loan-request><![CDATA[#[output application/json
---
{
reference_id: vars.refId,
application_type: "purchase",
loan_amount: 20000,
down_payment: 1000,
amortization_term: "30"
}]]]></roostify:create-loan-request>
</roostify:creating-loan-application>
<set-variable value="#[payload.id]" doc:name="Save Loan ID" variableName="loanId" />
<ee:transform doc:name="Display Response">
<ee:message >
<ee:set-payload ><![CDATA[%dw 2.0
output application/json
---
{
"RSF Account Id" : payload.account_id,
"User Id" : vars.userId,
"Loan Id" : vars.loanId
}
]]></ee:set-payload>
</ee:message>
</ee:transform>
</flow>
</mule>