Salesforce RESTコネクター
APIドキュメント
Section titled “APIドキュメント”Salesforce REST APIリファレンスにレコードとメタデータのエンドポイントが記載されています。また、Bulk API 2.0 Developer Guideに、Salesforce: オブジェクトのクエリステップが実行時に使用するクエリジョブが記載されています。
Salesforce側のアプリ、Run Asユーザー、接続の作成、テストまで、最初から最後までの手順については、Salesforceへの接続ガイドに従ってください。このページは、そのガイドの背後にあるフィールドのリファレンスです。
認証の仕組み
Section titled “認証の仕組み”このコネクターは、OAuth 2.0クライアント資格情報でサインインします。PlaidCloudは、アプリのコンシューマーキーとシークレットを、組織自身のトークンエンドポイントでアクセストークンに交換し、アプリのRun As設定で指定されたユーザーとしてAPIを呼び出します。対話型のログイン、リフレッシュトークン、管理が必要な証明書はありません。
この交換には、実運用で重要な2つの特性があります。
- 1つのトークンで抽出全体をカバーする。 PlaidCloudは、アクセストークンを接続と環境ごとに、有効期限の直前までキャッシュします。そのため、大規模なページング読み取りでも、ページごとに再認証することはありません。Salesforceが早期に受け付けなくなったトークン(取り消された場合、IP制限、セッションポリシーの変更など)は破棄され、自動的に1回だけ置き換えられます。
- リクエストはSalesforceが指示した宛先に送られる。 トークンのレスポンスには組織のインスタンスが示され、以降のすべての呼び出しは、入力したホストではなくそのインスタンスに対して行われます。そのため、My Domainやインスタンスが変更された後も接続は動作し続けます。
REST APIのバージョンは、可変ではなく接続ごとに固定されるため、組織のアップグレードによって、保存済みのステップの下でレスポンスの形式が黙って変わることはありません。新しい接続には現在サポートされているバージョンが使用されます。接続の設定APIを通じて、別のバージョンに固定することもできます。固定したバージョンがサポート終了になると、SalesforceはHTTP 410で応答し、PlaidCloudは廃止されたバージョンを報告します。
Tools > ConnectionsでSalesforce接続を作成または編集するときに、次のフィールドが表示されます。
アカウントの説明
Section titled “アカウントの説明”| フィールド | タイプ | 説明 |
|---|---|---|
| アカウント名 | テキスト | この接続の表示名。 |
| メモ | テキスト(複数行) | 接続に関する任意のメモ。 |
| フィールド | タイプ | 説明 |
|---|---|---|
| ホストまたはIPアドレス | テキスト | 組織のMy Domainホスト。本番とDeveloper Editionではmycompany.my.salesforce.com、サンドボックスではmycompany--uat.sandbox.my.salesforce.comです。省略した場合、PlaidCloudがhttps://を付加します。 |
| フィールド | タイプ | 説明 |
|---|---|---|
| クライアントID | テキスト | アプリのコンシューマーキー。 |
| クライアントシークレット | パスワード | アプリのコンシューマーシークレット。暗号化して保存されます。変更するには新しい値を入力し、保存済みの値を保持するには空白のままにします。 |
使用状況とセキュリティ
Section titled “使用状況とセキュリティ”| フィールド | タイプ | 説明 |
|---|---|---|
| 有効(アクセスを許可) | トグル | 接続を使用できるかどうか。接続を削除せずにアクセスを一時停止するには、チェックを外します。 |
| セキュリティモデル | 選択 | 接続を使用できるユーザー。所有者のみのプライベート、特定のメンバー、特定のセキュリティグループ、またはすべてのワークスペースメンバー。 |
各接続は、これらの値を環境ごとに1セット保持します。そのため、1つの接続で、開発環境ではサンドボックスを、本番環境では本番を指すことができます。資格情報のテストと設定は環境ごとに行ってください。
接続をテスト
Section titled “接続をテスト”接続をテストは、実際のトークン交換を行い、資格情報がどのユーザーとして認証されるかを報告します。
| 報告される内容 | 重要な理由 |
|---|---|
| 組織ID | 資格情報がどの組織に到達するかを確認します。本番環境に保存されたサンドボックスの資格情報を見つける最も早い方法です。 |
| APIバージョン | この組織がサポートする最新のバージョン。読み取りは、このバージョンではなく、接続に固定されたバージョン(salesforce_api_versionが設定されていない限りv61.0)で実行されます。 |
| Run Asユーザー | この接続が返すすべての行とフィールドのスコープとなるユーザー。抽出した行数を信頼する前に、これを確認してください。 |
テストが失敗した場合は、原因が示されます。認証の失敗ではHTTPステータスが報告され、クライアントシークレットは保存後に読み戻せないため、クライアントIDとシークレットの再入力を促します。
既知の制限事項
Section titled “既知の制限事項”- Run Asユーザーは、2つの異なる方法ですべての読み取りのスコープを決める。 そのユーザーが参照できない行は、エラーも件数も示されずに単に存在しなくなります。そのユーザーが読み取れないフィールドがあると、クエリ全体が失敗します。どちらもRun Asユーザーがすべてのスコープを決めるで説明しています。
- 読み取り専用です。 このコネクターはデータを抽出しますが、レコードをSalesforceに書き戻すことはありません。
- 抽出できないフィールドタイプがあります。 複合の住所フィールドと位置情報フィールド、
base64ブロブ、encryptedstring、anyTypeです。ステップのフィールドピッカーには、それぞれに印が付き、理由が示されます。ステップが拒否するフィールドを参照してください。 - 抽出は同期ではありません。 Salesforceで削除されたレコードは、ターゲットテーブルに残ります。
- Salesforceへの接続 — 手順を追ったウォークスルー
- Salesforce: オブジェクトのクエリ
- 接続の作成と管理