SalesforceのAPIとは?12種類とそれぞれの特徴を解説
Salesforceを運用する中で「Salesforceと他のシステムとを連携してデータを作成したい」「CRM以外のデータを参照したい」など、データ連携に活用できるのがSalesforceのAPIです。Salesforceは、さまざまなAPIを公開しており、業務の課題解決に役立てることができます。
当ページでは、SalesforceのAPIの種類やデータ連携のノウハウについて解説します。
オーリーズでは、Salesforceの導入からその後の活用まで幅広く支援しています。詳しいサポートをご希望の際には、お気軽にお問い合わせ下さい。
>>短期で商談につながる!Salesforceの活用術について詳しく見る<<
目次
Salesforce APIとは
Salesforce APIとは、Salesforceプラットフォームのデータや機能に外部から接続・連携するためのインターフェースです。Salesforce APIを利用すれば、他のシステムで管理されているデータをSalesforceが参照できるようにカスタマイズしたり、逆に他のシステムがSalesforceの機能にアクセスできるように設定したりできます。
Salesforceには機能の異なるさまざまなAPIが用意されています。
そもそもAPIとは
API(Application Programming Interface)とは、ソフトウェアやアプリケーション間で情報のやり取りを可能にするためのインターフェースです。異なるソフトウェアやサービスが通信し、互いの機能やデータを利用できるように接続する接点を指します。
APIは多くのクラウド型サービスやアプリケーションで用意されていて、異なるサービス同士を連携させるために活用できるようになっています。
特に汎用性の高いAPIとして「Web API」が知られており、Salesforceでも代表的なWeb APIである「REST API」と「SOAP API」を使用することが可能です。
Salesforce APIを活用するメリット
Salesforce APIを活用すると何が可能になるのでしょうか。主なメリットは以下の2点です。
- 既存機能ではデータ連携できないケースに対応
- 開発コスト・手間の削減
それぞれ詳しく見ていきましょう。
既存機能ではデータ連携できないケースに対応
Salesforceにある既存のデータ連携機能では対応できないケースでも、多くの場合APIを使うことでデータ連携ができます。
Salesforceとデータ連携する機能を最初から備えている外部サービスも多くあります。例えば会計ソフトの「freee」は、「AppExchange」で公開されているデータ連携用のアプリケーションをSalesforceにインストールすることで、簡単に連携できます。
それでも既存の機能だけでは自社のニーズに合わせたデータ連携ができないことがあります。そのような時にAPIを使って設定することで、解決できることがあります。
開発コスト・手間の削減
複雑なプログラムを一から開発するコスト・手間を抑えられる点も、Salesforce APIを活用するメリットです。Salesforce APIを使えば、既存のシステム同士をつなぐだけの簡単な設定で、求める機能を実現できることがあります。
システムを一から開発するとなると、プログラムの更新など長期的なメンテナンスにも多くの手間がかかることがあります。一方、Salesforce APIを使って市販のサービス同士を連携させる場合、サービス自体のメンテナンスは基本的にそのサービスの事業者が行ってくれるので、自社で対応する部分を大幅に削減することが可能です。
代表的な「Salesforce API」12種
Salesforceに用意されている12種類のAPIについて、それぞれの特徴は以下の表の通りです。
API名称 | プロトコル種別 | データ形式 | 通信方式 |
---|---|---|---|
REST API | REST | JSON、XML | 同期 |
SOAP API | SOAP(WSDL) | XML | 同期 |
Bulk API | REST | CSV、JSON、XML | 非同期 |
Pub/Sub API | gRPC およびプロトコルバッファ | バイナリ | 非同期(データのストリーム) |
Connect REST API | REST | JSON、XML | 同期(写真の処理は非同期) |
ユーザーインターフェース API | REST | JSON | 同期 |
Analytics REST API | REST | JSON、XML | 同期 |
メタデータ API | SOAP(WSDL) | XML | 非同期 |
Apex REST API | REST | JSON、XML、カスタム | 同期 |
Apex SOAP API | SOAP (WSDL) | XML | 同期 |
Tooling API | REST または SOAP(WSDL) | JSON、XML、カスタム | 同期 |
GraphQL API | GraphQL | JSON | 同期 |
表で挙げた各APIの特徴について、以下に詳しく解説します。
REST API
REST APIは代表的なWeb APIの1つで、汎用性の高さから多くのサービスで用いられています。データ形式は、JSONおよびXMLの両方に対応しています。JSONはXMLと比べると、データ処理の負荷が少なく、処理速度を向上させることが可能です。
REST APIは汎用性が高いため、Salesforceと他のサービスをデータ連携させるさまざまな場面で使用できます。
SOAP API
SOAP APIもWeb APIの一種です。REST APIとの違いはXML形式のデータのみを扱うことなどいくつかありますが、SOAP APIでできることは基本的にREST APIでも可能です。どちらのAPIが適しているかを選ぶには技術的に高度な知識が必要でしょう。
Bulk API
Bulk APIは、大量のデータを非同期で処理できるAPIです。大量のデータを一括登録・更新・削除する操作などに向いています。Salesforceではレコードの一括登録などができる「データローダー」と呼ばれるアプリケーションで使われているAPIです。
Pub/Sub API
Pub/Sub APIは、従来の「Streaming API」に置き換わる新しいAPIで、リアルタイムイベントや、変更データキャプチャイベントの公開・登録などを行うことができます。
Connect REST API
外部アプリケーションでSalesforceのChatter機能を使いたい場合は、Connect REST APIを利用しましょう。Chatter機能は、Salesforceに搭載されている社内SNS・ビジネスチャットです。このAPIを使うと、外部アプリケーションにChatterのフィードを表示できます。
ユーザーインターフェース API(User Interface API)
ユーザーインターフェース APIは、Salesforceの操作画面をカスタマイズする時に使用するAPIです。ユーザーインターフェース APIを使用することで、Salesforce本体と同じようにレコードの作成・更新・削除などの操作ができるユーザーインターフェースのアプリケーションを開発できます。
Salesforceの新しいユーザーインターフェースである「Lightning Experience」やSalesforceの公式モバイルアプリでも、ユーザーインターフェース APIが活用されています。
Analytics REST API
Analytics REST APIは、データセット・レンズ・ダッシュボードなどSalesforceのデータ解析の機能を活用できるAPIです。例えばSalesforceのレポートやダッシュボードと、外部システムを連携させる仕組みを構築したい場合に使用できます。
メタデータ API(Metadata API)
Salesforce上で保存されているデータは、レコード情報の「ビジネスデータ」とレコード以外の情報である「メタデータ」に区別されます。メタデータには、Salesforceの設定・カスタマイズ全般の情報や、会社情報などの基本情報が含まれます。メタデータ APIは、それらメタデータを記述するためのAPIです。
メタデータAPIではカスタマイズ情報を取得、作成、更新、削除などができます。例えばSandboxなどのテスト環境から本番環境へ移行時のメタデータの移動に利用することが可能です。
Apex REST API
Apex REST APIは、Salesforce用のプログラミング言語「Apex」を使ったAPIの1つです。Apexを使うことで、Salesforceの標準機能では難しい処理を行うなど、高度なカスタマイズが可能です。Apexを使ったSalesforceのカスタマイズにおいて、外部サービスがRESTによってアクセスできるようにしたい場合に、Apex REST APIを利用することになります。
Apex SOAP API
こちらもSalesforce用のプログラミング言語「Apex」を使ったAPIです。Apexを使ったSalesforceのカスタマイズにおいて、外部サービスがRESTではなくSOAPを使ってアクセスできるように設定する際には、Apex SOAP APIを利用することになります。
Tooling API
Tooling APIは、Apexなどの開発ツールを使ってアプリケーション開発をする際に利用するAPIです。
Apexの他に、Salesforce独自のWebフレームワーク「Visualforce」や、アプリケーション開発プラットフォーム「Force.com」での開発にも使用できます。Tooling APIではSOAPとRESTの両方で通信でき、汎用的に活用することが可能です。
GraphQL API
GraphQL APIは、比較的新しいWeb APIです。リクエストされた特定のデータだけを処理することを特徴としています。
不必要なデータの処理にかかるリソース負担を削減でき、処理速度を高めやすいことが特徴です。柔軟性の高さや、プログラミングのしやすさなどでも知られています。
API連携以外でSalesforceとデータ連携する方法
API連携の他に Salesforceとデータ連携する方法として以下の2種類があります。
- データローダーを使用する
- データ連携ツールを導入する
それぞれ以下に詳しく解説します。
データローダーを使用する
データローダーは、Salesforceと外部システム間で、データをインポート・エクスポートするためのツールです。外部のデータベースからSalesforceにデータを移行する際などに、データローダーを使えばレコード情報を一括で取り込めます。また、Salesforceからレコードデータを抽出して他のシステムで利用することも可能です。
注意点として、APIを利用した開発と比べると、やや機能性が劣ります。扱えるデータ形式はCSVに限られ、基本的に手動での操作なので自動化には向いていないことなどがデメリットです。
柔軟な拡張性を担保したい場合はAPIが向いているでしょう。
データ連携ツールを導入する
EAIツールなど、異なるシステム同士を連携できるデータ連携ツールを使う方法もあります。EAIとは「Enterprise Application Integration」の略で、複数の異なるシステム同士を連携させる仕組みのことです。
Salesforceを含む幅広い種類のシステム同士を連携できるEAIツールが、各社より提供されています。さまざまなEAIツールを比較して、自社のニーズに合ったものがないか探してみるのも一手です。ただし有料のツールがほとんどなので、予算面も考慮する必要があるでしょう。
Salesforceのデータ連携を検討する際のポイント・注意点
Salesforceのデータ連携を検討するにあたっては、APIなど具体的な方法だけでなく、関係する他の要素も検討しておきましょう。特に重要な2つのポイントを解説します。
連携するシステムを検証する
Salesforceと連携したいシステムを検証してみましょう。場合によっては、連携したいシステムの刷新を検討する必要があるかもしれません。連携したいシステムが、導入からかなりの年月が経っていて旧式の技術を使っている場合などは、無理にデータ連携しようとすると多くの手間がかかってしまうことがあります。
カスタマイズを繰り返すと複雑化して、システム障害などのトラブルが発生しやすくなったり、将来的に乗り換えが難しくなったりするおそれもあります。
場合によっては既存のシステムにSalesforceを合わせるのではなく、Salesforceに合わせて新しいシステムやツールへの乗り換えを検討することも重要です。
Salesforceの拡張性を把握する
Salesforceの拡張性を把握し、どこまでSalesforceだけで完結できるか知っておくことも重要です。
Salesforceは柔軟性が高く、ビジネスニーズに合わせてさまざまな拡張が可能です。場合によっては、既存システムとデータ連携をせずとも、Salesforceの機能を拡張するだけで十分かもしれません。
例えば「AppExchange」で公開されているアプリケーションをインストールすることで、簡単にSalesforceの機能を拡張できます。詳しくは以下のページをご参照下さい。
まとめ
Salesforceには、さまざまなAPIが用意されています。まずはAPIで何を実現できるのか、特徴を理解することが大切です。またSalesforceと他のシステムのデータ連携をする他の方法として、データローダーやデータ連携ツールの活用も検討できます。自社の課題に沿った形で、最適なデータ連携の手段を選択しましょう。
弊社では、Salesforce認定パートナーであるセールスリクエストとの協業により、Salesforceの活用支援サービスをご提供しています。APIによるカスタマイズを含め、Salesforceの設定・活用における幅広いサポートをご提供することが可能です。Salesforceの活用に限らず、認知からインサイドセールスまで一気通貫の支援を提供しています。
「Salesforceのカスタマイズ方法を検討している」「Salesforceの定着化に課題がある」など、お悩みの分野についてお気軽にお問い合わせ下さい。
Salesforce/HubSpotの構築・活用のお悩みを解決できます
セールスリクエストは、国内では珍しい「CRM構築・活用支援ができるインサイドセールス代行会社」です。
SalesforceやHubSpotを導入したは良いものの現場メンバーに浸透していない、自社のマーケティング・営業活動に有用なデータを可視化・抽出できていないなど、
CRMに関するお悩みをお持ちの場合は、ぜひお気軽にご相談ください。貴社のプロジェクトゴールに応じて、CRMを構築・有効活用するためのサポートが可能です。
広告運用、インサイドセールス、Salesforce構築・活用推進の支援、WEBサイト制作など、BtoB事業者の課題解決に役立つ情報をお届けします。