0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

お題は不問!Qiita Engineer Festa 2024で記事投稿!
Qiita Engineer Festa20242024年7月17日まで開催中!

MuleSoft公式チュートリアルを学ぶ - SaaSアプリケーションをSalesforceと連携する編

Posted at

はじめに

MuleSoftを勉強する機会があったので、公式チュートリアルをやってみました。

しかし2024年6月現在、いくつかのチュートリアルは Mulesoftの最新バージョンと画面や機能が異なっていてなかなか進めないところがあったので、現行バージョンの仕様を調べ、最終的にうまくいった手順をスクショ満載でまとめました。

本記事は、前の記事

に引き続き、Introduction to developing on Anypoint Platform シリーズのパート4にあたる、SaaSアプリケーションをSalesforceと連携する(Connecting your first SaaS application to Salesforce)のチュートリアルをMuleSoftの現行バージョンで学ぶ際の手順です。

今回記事の元ネタのMuleSoft公式チュートリアルはこちらです:
Connecting your first SaaS application to Salesforce
https://developer.mulesoft.com/tutorials-and-howtos/quick-start/connecting-your-first-saas-application/

準備

このチュートリアルでは、下記のアプリケーションを使います。チュートリアルを進める前に無料トライアルアカウントの取得や、デスクトップアプリケーションのダウンロード/インストールをする必要があります。

  • Anypoint Studio - APIの実装を開発するためのデスクトップ・アプリケーションです。ダウンロード・インストールしてください。
  • RESTクライアント - APIテストのために何かしらのRESTクライアントアプリが必要です。本記事ではPostmanを使います。
  • Saleforceのアカウント - 無料の開発者アカウントを利用できます。

1. Muleアプリケーションを作成する

現在の公式チュートリアルでは、ウェブ上のAnypoint Platformにある Flow Designer 機能で新規のMuleアプリを作ることになっていますが、Flow Designer は2024年2月28日をもって廃止されてしまって現在使えません。

Anypoint Flow Designer is Retiring(EOL) on February 28, 2024

デスクトップ Flow Designer の廃止

そのため、本記事では Anypoint Studio の方を使用します。

さっそく、Anypoint Studioを起動し、新規のMuleプロジェクトを任意の名前で作成します。

作成するフローは、最終的にこのようになります。

image.png

まず、開いたキャンバスに、Mule Paletteから HTTP Listener コンポーネントをドラッグ&ドロップし、Pathを /submit に設定します。

image.png

HTTP_Listener_configの設定は、デフォルト値のままでOKです。

次に、Mule Paletteから HTTP Request コンポーネントをドラッグ&ドロップし、前のチュートリアルでCloudHubにデプロイしたAPIのエンドポイントURLを、URLフィールドに入力します。

image.png

次に、Mule Paletteで Foreach コネクタを検索し、HTTP Requestの隣にドラッグ&ドロップします。

image.png

最後に、Mule Paletteで Salesforce コネクタを検索し、Create コンポーネントを For Eachコネクタに重ねるように ドロップします。

image.png

Salesforceコネクタの設定では、まずBasic Settingsセクションで緑の+アイコンをクリックして構成を入力します。

Salesforceアカウントのユーザー名、パスワード、セキュリティートークンを入力するのですが、セキュリティートークンについては後述します。

image.png

Salesforceの接続設定が完了したら、Generalセクションを入力します。
Typeは Lead を選択し、Recordsは payload とします*。

image.png
*実行時に Cannot coerce Object というエラーが出る場合はRecordsの記述を [payload] に変更

Salesforceのセキュリティートークンについて

Salesforceのアカウントを作成したときに、セキュリティートークンがメールで送られてくるらしいのですが、来なかった場合はSalesforceにログインし、手動でトークンを再発行する必要があります。

Salesforceは、Lightning Experience と Salesforce Classic という2つのユーザーインタフェースがあり、トークン再発行メニューへの辿り着き方が違います。

Lightning Experience: 右上の丸いアイコン > 設定 > 私の個人情報 > 私のセキュリティトークンのリセット
Salesforce Classic: 自分の名前 > 個人用 > 私のセキュリティトークンのリセット

今回作成したフローは、下図のような流れになっています。

image.png

次はこのフローをローカルでテストしてみましょう。

Salesforce連携をテストする

テストを実行する前に、一度Salesforceにログインして、リード画面を確認します。
今回、テスト実行前のリード総数は22件です。

image.png

では、Anypoint Studioで、すべてのファイルを保存し、キャンバス上のどこかで右クリックしてメニューから Run project <プロジェクト名> を選び、アプリを実行します。

ローカルでアプリが実行されている状態で Postman からリクエストを送信します。
送信先のURLは localhost:8081/submit です。

image.png

問題なく動いていれば、ステータス 200 が返され、フローの中で Contact APIから取得した連絡先がレスポンスBodyに含まれているのがわかります。

再びSaleforceを開いて、リードが追加されているか確認しましょう。

image.png

テスト実行前よりもリード総数が増え(この時は6件増えて総数28件)、API連携によって追加されたリードがリストの上の方にあるのが確認できます。

余力があれば

余力があれば、前のチュートリアルと同じ手順で今回のアプリをCloudHubにアップロード/デプロイし、Postmanからクラウド上のAPIにリクエストを送信してテストしてもいいと思います。

おわりに

本記事では、MuleSoft公式チュートリアルの Introduction to developing on Anypoint Platform シリーズ パート4にあたる Connecting your first SaaS application to Salesforce を、2024年6月現在のMuleSoft最新バージョンで学ぶ際の手順をご紹介しました。

このパート4がシリーズ最後のチュートリアルです。
ここまでやると、だいぶAPI連携を駆使している感がでてきますね。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?