【2025年】Salesforce Sales Cloud API完全ガイド!
目次
「Salesforceと基幹システムの間で、なぜか顧客データが一致しない…」
「Webからの問い合わせを、営業担当者が手作業でSalesforceに登録しており、対応が遅れがちだ」
もし、あなたの会社がSalesforceを導入している、あるいは導入を検討しているのであれば、このような課題に直面しているかもしれません。
その課題を解決し、Salesforceを単なるSFA/CRMツールから、会社全体の情報ハブへと進化させる鍵、それが「Salesforce API」の活用です。
この記事は、Salesforce API連携プロジェクトに携わる、すべての方向けの完全ガイドです。「APIでできること」から、開発者が知るべき「APIの種類の最適な選び方」、そして失敗しないための「実践的なベストプラクティス」まで徹底解説します。
Salesforce APIとは?
まず、APIという言葉に馴染みのない方のために、その概念と価値を解説します。
API(Application Programming Interface)とは、ひと言でいえば「ソフトウェア同士を繋ぐ、公式な通訳・対話の窓口」です。この窓口を通じて、異なるシステム(例えば、あなたの会社の会計システムとSalesforce)が、決められたルールに従って、安全にデータを交換(読み書き)できるようになります。
API連携で実現する業務改善シナリオ3選
API連携によって、具体的にどのような業務改善が実現するのでしょうか。代表的な3つのシナリオをご紹介します。
シナリオ1:基幹システムの「顧客マスタ」とSalesforceの「取引先」を自動同期する
| 項目 | 内容 |
|---|---|
| 課題 | 経理部門が基幹システムで、営業部門がSalesforceで、それぞれ顧客情報を管理しており、二重入力や情報の不整合が発生している。 |
| APIによる解決 | API連携で両システムを繋ぎ、片方で顧客情報が更新されたら、もう片方も自動で更新される仕組みを構築。 |
| 効果 | 常に最新の正しい顧客情報に全社で統一され、請求ミスや営業の非効率な確認作業がなくなります。 |
シナリオ2:Webサイトの問い合わせフォームから、直接Salesforceに「リード」を作成する
| 項目 | 内容 |
|---|---|
| 課題 | Webサイトからの問い合わせを、マーケティング担当者がCSVにまとめ、手作業でSalesforceにインポートしており、営業への引き渡しに1日以上のタイムラグが発生している。 |
| APIによる解決 | WebフォームとSalesforceをAPIで直接接続。問い合わせがあった瞬間に、Salesforceに見込み客(リード)として自動で登録されるようにします。 |
| 効果 | リードへの対応速度が劇的に向上し、競合他社に先んじてアプローチできるため、商談化率が大幅に改善します。 |
シナリオ3:BIツールでSalesforceの営業データをより高度に分析する
| 項目 | 内容 |
|---|---|
| 課題 | Salesforceのレポート機能だけでは、基幹システムの販売実績データなどと組み合わせた、より高度な経営分析が難しい。 |
| APIによる解決 | BIツール(TableauやGoogle Looker Studioなど)からAPI経由でSalesforceのデータを取得。他のデータと組み合わせて、多角的な分析を可能にします。 |
| 効果 | 「どの地域の、どの製品が、どれくらいの利益率で売れているのか」といった、より深いインサイトを得て、データに基づいた経営戦略を立案できます。 |
なぜAPI連携が、Salesforce活用の鍵となるのか
これらのシナリオから分かるように、API連携はSalesforceを社内の「データの孤島」にせず、企業全体の情報システムとシームレスに連携させるための生命線です。APIを使いこなすことで、Salesforceに蓄積されたデータの価値を最大化し、真のデータドリブン経営を実現できるのです。
Salesforce APIの種類の違いと最適な選び方
Salesforceは、多様なユースケースに対応するため、複数の種類のAPIを提供しています。どのAPIを選ぶかが、開発プロジェクトの成否を分けます。
リアルタイムな少数データ操作なら「REST API」
特徴
軽量で分かりやすく、Webの標準技術(HTTP)に基づいているため、現在のAPI連携の主流です。一件ずつ、あるいは少数のデータをリアルタイムで、同期的に(処理が終わるまで待つ)操作するのに適しています。
ユースケース
- モバイルアプリやWebアプリケーションから、Salesforceの特定の顧客情報を表示・更新する。
- 外部のECサイトで商品が購入された際に、Salesforceに一件の注文レコードを作成する。
大量のデータを一括処理するなら「Bulk API」
特徴
その名の通り、数万件から数百万件といった大量のデータを、非同期で(処理を依頼したら、完了を待たずに次の作業に進める)効率的に処理することに特化したAPIです。
ユースケース
- 毎晩、基幹システムから全顧客データをSalesforceに一括同期する夜間バッチ処理。
- 初期導入時の、旧システムからの大規模なデータ移行。
厳密なトランザクション処理なら「SOAP API」
特徴
REST APIよりも古くから存在するAPIで、WSDLという厳格な仕様定義に基づいています。複雑ですが、エラー処理などのトランザクション管理機能が豊富なため、極めて高い信頼性が求められる処理に適しています。
ユースケース
- 金融システムやERPなど、データの整合性が絶対に保証されなければならない基幹システムとの連携。
リアルタイムなイベント通知なら「Streaming API」
特徴
これまでのAPIが外部からデータを「取りに行く(プル型)」のに対し、Streaming APIはSalesforce側から「変更を知らせる(プッシュ型)」通信方式です。Salesforce上でデータが変更された瞬間に、そのイベントを外部システムにリアルタイムで通知します。
ユースケース
- Salesforceで商談のフェーズが更新されたら、外部のダッシュボードUIに即時反映させる。
- 重要なケース(問い合わせ)が登録されたら、サポートチームのSlackにリアルタイムで通知する。
APIの使い分け比較表
| APIの種類 | 主な用途 | 通信方式 | データ量 |
|---|---|---|---|
| REST API | 汎用的なデータ操作 | 同期/リアルタイム | 少量〜中量 |
| Bulk API | 大量データの一括処理 | 非同期/バッチ | 大量 |
| SOAP API | 厳密なトランザクション | 同期/リアルタイム | 少量〜中量 |
| Streaming API | イベントのリアルタイム通知 | 非同期/プッシュ型 | 少量 |
Salesforce API連携を始めるための4ステップ
ここでは、最も一般的に利用されるREST APIを例に、API連携を試すための最初の4ステップを解説します。
Step1:API利用の前提条件を確認する(エディションと権限)
SalesforceのAPIは、Enterprise Edition以上のプランで利用可能です(Professional Editionには一部制限あり)。また、APIを利用するユーザーには、「API参照権限」が付与されている必要があります。
Step2:接続アプリケーションを作成し、認証情報を取得する
外部システムがSalesforceにアクセスするための「玄関」と「鍵」を用意します。Salesforceの「設定」から「アプリケーションマネージャ」を開き、「新規接続アプリケーション」を作成します。OAuth 2.0を有効にすると、「コンシューマ鍵(Client ID)」と「コンシューマの秘密(Client Secret)」が発行されます。これが認証に必要なIDとパスワードになります。
Step3:OAuth 2.0でアクセストークンを取得する(認証・認可)
取得したコンシューマ鍵と秘密を使い、Salesforceの認証エンドポイントに対してリクエストを送信し、「アクセストークン」を取得します。このアクセストークンが、実際のデータ操作リクエスト時に、正当なアクセス権限を持つことを証明する「一時的な許可証」となります。
Step4:Postman等のツールで、APIコールを試してみる
PostmanのようなAPI開発ツールを使い、実際にAPIを叩いてみましょう。以下は、取引先(Account)のデータを取得する最も簡単なcURLリクエストの例です。
cURLリクエスト例
Bash
curl https://YOUR_INSTANCE.salesforce.com/services/data/v59.0/query/?q=SELECT+Id,Name+FROM+Account -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
レスポンス例 (JSON)
JSON
{
"totalSize" : 2,
"done" : true,
"records" : [ {
"attributes" : {
"type" : "Account",
"url" : "/services/data/v59.0/sobjects/Account/001xx000003DHPxAAO"
},
"Id" : "001xx000003DHPxAAO",
"Name" : "株式会社ABC"
}, {
"attributes" : {
"type" : "Account",
"url" : "/services/data/v59.0/sobjects/Account/001xx000003DHPxAAP"
},
"Id" : "001xx000003DHPxAAP",
"Name" : "株式会社XYZ"
} ]
}
失敗しないAPI利用のベストプラクティス
Salesforce APIの利用には、プラットフォーム特有の「お作法」があります。これを知らないと、プロジェクトは必ず失敗します。
必ず理解すべき「ガバナ制限(APIコール数の上限)」とは
Salesforceは、複数の企業がサーバーリソースを共有する「マルチテナント」環境です。そのため、一社がリソースを独占しないように、様々な制限(ガバナ制限)が設けられています。APIにおいて最も重要なのが「24時間あたりのAPIコール数(リクエスト数)の上限」です。この上限を超えると、APIはエラーを返し、システム連携が停止してしまいます。
ガバナ制限を回避・考慮するための設計パターン
Bulk APIの活用
1万件のデータを更新するのに、REST APIをループで1万回呼ぶのは最悪の設計です。Bulk APIを使えば、わずか数回のコールで処理が完了します。大量データ=Bulk APIは鉄則です。
複合リクエストの利用
複数の異なるレコードを操作したい場合、個別にAPIを呼ぶのではなく、複数のリクエストを一つにまとめて送信できる「複合リクエスト」を活用することで、APIコール数を節約できます。
プラットフォームイベントの活用
外部システムがSalesforceの変更を知るために、定期的に「何か変更はありますか?」と問い合わせる(ポーリング)設計は、無駄なAPIコールを消費します。Streaming APIやプラットフォームイベントを使い、Salesforceからのプッシュ通知を待つ設計にしましょう。
セキュリティとエラーハンドリングの考慮点
認証情報は安全な場所に保管し、決してコード内にハードコーディングしてはいけません。また、ネットワーク障害やガバナ制限超過など、APIコールが失敗した場合に備え、適切なエラーハンドリングとリトライ処理を必ず実装してください。
よくある質問 (Q&A)
Q1. APIを利用できるSalesforceのエディションは?
A1. APIアクセスは、Enterprise Edition、Unlimited Edition、Developer Edition、Performance Editionで標準で利用可能です。Professional Editionでは、追加料金でAPIアクセスを有効にできる場合がありますが、いくつかの制限があります。Essentials Editionでは利用できません。
Q2. 現在のAPI使用量はどこで確認できますか?
A2. Salesforceの「設定」メニューから確認できます。クイック検索ボックスに「組織情報」と入力してページを開くと、「API 要求数 (この 24 時間以内)」という項目で、現在の上限数と使用量を確認できます。
Q3. コーディングなしでAPI連携を実現する方法はありますか?(iPaaS/MuleSoftなど)
A3. あります。iPaaS(Integration Platform as a Service)と呼ばれる、様々なクラウドサービス間のAPI連携を、プログラミング知識なし(ノーコード/ローコード)で実現できるツールが存在します。代表的なものに、Salesforceが提供する「MuleSoft」や、「Workato」「Zapier」などがあります。単純なデータ連携であれば、これらのツールを使うことで、開発コストと期間を大幅に削減できる可能性があります。
まとめ
Salesforce APIは、Sales Cloudの価値を最大限に引き出し、企業のデータ活用を次のステージへと導く、極めて強力なツールです。
しかし、そのパワーを正しく引き出すには、解決したいビジネス課題に応じて、REST, Bulk, Streamingといった適切な種類のAPIを、適切な設計思想で選択することが不可欠です。
この記事が、あなたのSalesforce連携プロジェクトを成功に導くための、信頼できる地図となることを願っています。