Salesforce連携(クライアント認証)

connect for Pleasanter機能

connect for PleasanterでSalesforce連携(クライアント認証)について説明します。

Salesforce連携の準備

  • Salesforce(セールスフォース)は、「世界シェアNo.1の、企業の成長を支えるクラウド型プラットフォーム」です。
  • 単なる「顧客名簿」ではなく、営業、マーケティング、カスタマーサポートなど、顧客に関わるあらゆる情報を一元管理し、AIを活用してビジネスを効率化するためのサービスを提供しています。
世界No.1 AI CRM | AIエージェント搭載のSFA、CRM
世界15万社以上が導入。無料トライアルでSalesforceを今すぐ体験。クラウドベースのCRMやSFA製品一覧、導入事例をご覧ください。
  • Salesforce REST APIは、Salesforceのデータや機能に外部システムからアクセスするための、シンプルかつ強力なインターフェースです。
Salesforce Developers
Salesforce Developer Website
  • 今回ご紹介するのはSalesforceのリード(Lead)データをクライアント認証で取得します。
  • 物理名はオブジェクトマネージャのリードで確認してください。
Salesforce Help

Salesforceを活用した利用シーン

顧客マスタの一元化と他部門でのデータ活用

  • シーン: Salesforceの取引先(Account)や取引先責任者(Contact)データを定期的にプリザンターの「顧客マスタアプリ」に同期する。
  • メリット: 常に最新かつ正確な顧客情報をプリザンター上で参照・活用できるようになります。

カスタマーサポートと開発の課題(バグ)トラッキング連携

  • シーン: Salesforce Service Cloudのケース(お問い合わせ)オブジェクトのデータを、プリザンター上の「開発バックログ・不具合管理アプリ」に同期する。
  • メリット: 顧客対応を行うCS部門と、修正を行うエンジニア部門がそれぞれの使いやすいツールを利用しつつ、対応状況をリアルタイムに共有・連動できます。

現場向けの軽量なイベント・セミナー来場者管理

  • シーン: Salesforceのキャンペーンメンバー(イベント参加予定者)をプリザンターに取得し、イベント当日の受付スタッフがスマホやタブレットでチェックイン操作を行う。
  • メリット: 現場スタッフが使いやすいシンプルな画面をプリザンターで素早く構築でき、Salesforceの複雑な画面を操作する教育コストや誤操作のリスクを減らせます。

受注後の「在庫引き当て」や「シリアルナンバー管理」

  • シーン: Salesforceでの受注データをプリザンターの「資産・在庫管理アプリ」に取り込み、実際に納品する機器のシリアル番号や倉庫の在庫状況と紐づける。
  • メリット: CRM(顧客管理)とERP/ロジスティクス(現物管理)の領域を適材適所で切り分け、詳細な現物管理を行えます。

契約更新・ライセンス管理のタスク自動生成

  • シーン: Salesforceの契約(Contract)やカスタムオブジェクトから「契約終了日の2ヶ月前」のデータをプリザンターに取得し、法務や総務の「更新手続きタスク」として起票する。
  • メリット: 営業担当者だけでなく、バックオフィス部門のタスク管理ツール(プリザンター)に直接作業指示が飛ぶため、解約防止や手続きの遅延を確実に防ぎます。

案件ごとの詳細な「原価・経費予実管理」

  • シーン: Salesforceの売上予定データをプリザンターの「プロジェクト収支管理アプリ」に取り込み、そこに日々の工数や外部発注費を入力して予実を比較する。
  • メリット: Salesforce上では管理しきれない泥臭い原価入力や経費データをプリザンター側で吸収し、プロジェクト単位の正確な利益率(限界利益)を可視化できます。

商談に紐づく外注費・仕入先への「発注管理(購買連携)」

  • シーン: SIerや商社などにおいて、Salesforceの受注データ(プロジェクト概要と予算)をプリザンターの「購買・発注アプリ」に取り込み、下請け企業やメーカーへの発注書作成・検収プロセスを開始する。
  • メリット: 「売上(営業)」をSalesforceで、「仕入・外注(購買)」をプリザンターで分担しつつデータを紐付けることで、架空発注などの不正を防ぎ、内部統制(ガバナンス)を強化できます。

法務・財務部門による「反社チェック・与信審査」プロセス

  • シーン: Salesforceで新規の「取引先」が登録された、あるいは特定のフェーズに進んだタイミングで、プリザンターの「与信審査アプリ」にデータを連携し、法務・財務担当者に審査を依頼する。
  • メリット: バックオフィスの専門部署が、外部の信用調査データの添付や審査コメントの記入をプリザンター上で行え、セキュアな審査記録を残せます。

現場作業員・フィールドエンジニア向けの「安価な作業指示ビューア」

  • シーン: Salesforceで管理している「保守点検予定(ケースやカスタムオブジェクト)」や「顧客の設置機器データ」をプリザンターに連携し、外部の協力会社の作業員がスマホから今日の訪問先を確認する。
  • メリット: 現場に必要な情報だけをシンプルかつ安全に共有できます。

物理的なノベルティやカタログの「発送・物流(フルフィルメント)管理」

  • シーン: Salesforce上でマーケティング部門が「カタログ送付フラグ」を立てたリード(見込み客)のデータを、プリザンターの「発送業務管理アプリ」に自動取得し、倉庫担当者のピッキングリストとして表示する。
  • メリット: 梱包や発送といった「物理的な作業プロセス」を行う物流担当者が、宛名ラベルの作成や発送完了ステータスの管理を現場主導でスムーズに行えます。

Salesforce REST APIの特徴

項目特徴
軽量なデータ交換主に JSON 形式(XMLも可)を使用するため、モバイルアプリやモダンなWeb開発に適しています。
リソース指向各データ(取引先、連絡先など)が固有のURI(URL)を持ち、標準的なHTTPメソッドで操作します。
高い柔軟性標準オブジェクトだけでなく、カスタムオブジェクトやApexで作成した独自ロジック(Apex REST)にもアクセス可能です。

Salesforce REST APIの注意点

API制限

  • 組織の契約エディション(Enterprise, Unlimitedなど)やユーザー数によって、24時間あたりのリクエスト数上限が決まっています。

バージョニング

  • /v60.0/ のようにURLにバージョンが含まれます。Salesforceは年3回アップデートされますが、古いAPIバージョンも長期間サポートされるため、急な仕様変更でアプリが壊れる心配が少ないです。

クエリ (SOQL)

  • 取得件数(バッチサイズ): 1回のリクエストで返ってくる最大件数は通常 2,000件 です。それ以上のデータがある場合は、レスポンスに含まれる nextRecordsUrl を使って次の2,000件を取得する「カーソル方式」での取得になります。
  • クエリ文字数の制限: SOQL文自体の長さは 100,000文字 までです。
  • 結合(Join)の制限: 関連オブジェクトを辿れる深さは、親方向(子から親)へは 5レベル、子リレーション(親から子)へは 1レベル までです。
  • タイムアウト: クエリの実行時間が 120秒 を超えるとタイムアウトエラーになります。
    同時実行制限: 20秒以上かかる長時間実行クエリは、組織全体で 10個 までしか同時に実行できません。

URIの長さ

  • REST APIはGETリクエストのURLにクエリを含めるため、URL全体の長さ制限(通常 16,384文字 程度)に引っかかる場合があります。非常に長い条件指定をする場合は注意が必要です。

Salesforce REST APIの認証方式

  • Salesforce REST APIで利用可能な主要なOAuth 2.0認証フローです。
  • 現在、Salesforceはセキュリティ強化のため、従来の「パスワードフロー」からの脱却を強く推奨しています。
フロー名主な用途メリットデメリット
JWT ベアラーフローサーバー間連携 (S2S)
バッチ処理など
・ユーザーの介入が一切不要
・パスワード不要でセキュア
・トークン管理が不要
・デジタル証明書(OpenSSL等)の作成・管理が必要
クライアント認証情報
(Client Credentials)
シンプルなサーバー間連携
バックエンド同期
・実装が非常に簡単
・証明書の管理が不要
・モダンな標準規格
・Client Secretの漏洩リスク
・実行ユーザーを1人に固定する必要がある
Web サーバーフロー
(認証コードフロー)
Webアプリケーション・標準的で汎用性が高い
・ユーザーごとの権限で操作可能
・リフレッシュトークンが使える
・初回のみブラウザでのログイン承認操作が必要
ユーザーエージェント
(PKCE推奨)
モバイル / SPA
(JavaScriptアプリ)
・クライアントシークレットを隠せない環境でも安全に使える・PKCEの実装(ハッシュ計算等)が少し複雑
デバイスフローIoT / CLIツール・ブラウザがない機器でも、別端末(スマホ等)から承認できる・ユーザーによるコード入力の手間が発生する
パスワードフロー
(ROPC) ※非推奨
レガシーシステムの維持・実装が極めて単純MFA(多要素認証)に対応できない
・パスワード変更時に連携が止まる
アセットトークンIoT機器の個体認証・デバイスと顧客(Asset)を紐づけた高度な認証が可能・設定とデータモデルの設計難易度が高い

Salesforce連携サンプル

「クライアント認証情報」を使用して、Salesforceのリード(Lead)データを取得します。

  • CFPサービス管理サイトの設定
    • 認証情報:Salesforce>設定>アプリケーションマネージャ>新規Lightningアプリケーション(接続アプリケーション)で作成してください
    • なお、Salesforce連携(パスワードフロー)では、エンドポイントを「query」として、削除データを除く取引先を取得していましたが、リード取得では削除データも含むデータを取得するため「queryAll」を使い削除データには削除フラグをチェックボックスで表示させます。
      • 変更前:${this.serviceInfo.baseUrl}/services/data/${apiVersion}/query?q=${encodeURIComponent(soql)}
      • 変更後:${this.serviceInfo.baseUrl}/services/data/${apiVersion}/queryAll?q=${encodeURIComponent(soql)}
項目設定例
サービス名Salesforce
認証タイプOAuth2_ClientCredentials
baseURLhttps://【ドメイン】.my.salesforce.com
リクエスト情報{
 ”auth”: {
  ”tokenEndpoint”: “https://【ドメイン】.my.salesforce.com/services/oauth2/token”,
  ”clientId”: “【クライアントID】”,
  ”clientSecret”: “【クライアントシークレット】”
 },
 ”defaultParams”: {
  ”apiVersion”: “v63.0”
 }
}
  • CFPマッピング管理サイトの設定
    • 最大取得ページ:2000件×最大取得ページ、タイムアウト発生時に調整が必要
    • 更新処理件数:Pleasanterへの更新処理件数、タイムアウト発生時に調整が必要
項目設定例
マッピング名取引先
取得対象リソースLead
最大取得ページ2
PleasanterサイトID12345
マッピング情報{
 ”Id”: “ClassA”,
 ”LastName”: “ClassB”,
 ”FirstName”: “ClassC”,
 ”Company”: “ClassD”,
 ”Email”: “ClassE”,
 ”Phone”: “ClassF”,
 ”Status”: “ClassG”,
 ”LastModifiedDate”: “DateA”,
 ”IsDeleted”: “CheckA”
}
プライマリーキー[
 ”NumA”
]
更新処理件数100

Salesforce連携結果

  • リードサイトの一覧画面>最新データ同期>画面リロード

お問い合わせ

「connect for Pleasanter」のデモや製品に関するお問合せはお気軽にご相談ください。

タイトルとURLをコピーしました