Salesforceのインテグレーション

Retoolを介してSalesforceを照会します。

Retoolクラウド上でのSalesforceの設定

📘

クラウドの場合のみ

オンプレミス・デプロイメントの場合は、こちらの手順に従ってSalesforceの接続アプリを作成してください。

リソースをSalesforceに接続するには、サンドボックス組織に接続するかどうか(Connect to a sandbox organization)を選択して、Connect Salesforceを押します。Salesforceの許可手順に従い、Allowを押します(以下を参照)。

これで終了です。これで、Salesforce APIを照会できるようになりました。

カスタム接続アプリによるSalesforceリソースの設定

🚧

オンプレミス・デプロイメントの場合にのみ必要

Retoolクラウドを使用している場合は、前述の手順に従ってください。

前提条件: Salesforce内でアプリを作成する

まず、RetoolをSalesforceの「接続アプリケーション」として登録します。

  1. 接続アプリを新規作成します。
    • Lightning Experienceの場合は、App Managerを使用して接続アプリを作成します。クイック検索ボックスにApp Managerと入力します。次に、New Connected Appをクリックします。
    • Salesforce Classicの場合は、Setupから、Quick FindボックスにAppsと入力し、Apps(BuildCreate)を選択します。Connected AppsNewをクリックします。
  2. 名前と接続情報を入力します。Retoolを試すと、自分専用の電子メールになります。
  3. Enable OAuth Settingsにチェックを入れて、Retoolのリソース画面のコールバックURLを入力します。
Salesforceで使用するOAuthコールバックURLSalesforceで使用するOAuthコールバックURL

Salesforceで使用するOAuthコールバックURL

📘

SalesforceインスタンスURLの末尾は.salesforce.comとすること

例えば、インスタンスURLの末尾が.lightning.force.comの場合は、.my.salesforce.comに変更してください。

  1. サポートされているOAuthのスコープをすべてSelected OAuth Scopesに追加します。これらのスコープは、接続アプリを実行するユーザーが許可したものです。Full accessを追加する場合は、access and manage your dataperform requests on your behalf必要になります(少し分かりにくいですが、完全なアクセスによって実際にすべてが許可されるわけではありません)。
クラウドでホストされているRetoolで使用するSalesforceの設定例クラウドでホストされているRetoolで使用するSalesforceの設定例

クラウドでホストされているRetoolで使用するSalesforceの設定例

  1. Saveをクリックします。Consumer Key(クライアントID)とSecret(クライアント・シークレット)が作成されます。

アプリをRetoolに追加する

  1. 新規リソースを作成し、Salesforceを選択します。
  2. キー、シークレット、インスタンスURL(SalesforceのURL)を追加します。次に、「Test Connection」を押して、接続が機能することを確認します。
  3. Saveをクリックします。

Salesforce APIの照会

SalesforceのインテグレーションをRetoolで設定すると、Salesforceクエリー用の新規オプションがRetoolのページ・エディターに表示されます。このオプションを選択すると、Salesforce Object Query Language (SOQL)を使用してSalesforceからデータを受信できるUIが表示されます。

Salesforceでの一括操作

Retoolは、Salesforceからの一括挿入一括更新一括アップサート一括削除に対応しています。以下に例を挙げます。

一括挿入

一括更新

トラブルシューティング

expired access/refresh tokenエラーによってSalesforceクエリーを実行できない場合は、Retoolが有効なアクセス/リフレッシュ・トークンを生成できるようにSalesforce内の設定変更が必要であると考えられます。トラブルシューティング時にチェックすべき項目をいくつか挙げます。

  • Lightning Experienceで、SetupAppsConnected AppsManage Connected Appsと移動します。IP RelaxationEnforce IP Restrictionsに設定されている場合は、Edit Policyを押してRefresh token is valid until revokedに変更することもできます(以下のスクリーンショットを参照)。
  • デベロッパーのサンドボックス組織に接続している場合は、RetoolのSalesforceリソースでConnect to a sandbox organizationを選択していることを確認します。
  • Lightning Experienceで、SetupSecuritySession Settingsと移動します。組織全体のセッション設定が思いどおり(Timeout value値が小さすぎないなど)に設定されていることを確認します。