SalesforceのAPIとは?種類の紹介、概要などを分かりやすく解説
目次
Salesforceの得意なCRM(顧客管理)以外の機能を外部に求めた場合、外部ツールとの連携が必要です。外部ツールとの連携を進めるうえで登場してくるのが「SalesforceのAPI」ではないでしょうか。
この記事では、SalesforceのAPIについて、概念や役割などを解説します。
さらに、Salesforce APIの種類も紹介するので、SalesforceのAPIについて理解を深めようとしている担当者は、ヒントとしてお役立てください。
SalesforceのAPIとは
SalesforceのAPIとは、Salesforceに備わっていない機能を拡張する目的で、外部ツールとデータ連携するための接続設定のことです。Salesforceで分析中の顧客データを社内基幹システムへデータ連携して、製品のバージョンアップなどの活用で欠かせない概念となります。
APIとは
APIとは、A(アプリケーション)・P(プログラミング)・I(インタフェース)の頭文字を取った略称です。APIは、アプリケーションをプログラプログラミングするためのインターフェースとして活用されます。インターフェースは、接続することを意味して異なるツール間の接続環境で使われます。
インターフェースは、アプリケーションとプログラムをつなぐイメージです。身近にある機器でたとえると、スマホからプリンタで印刷する際にもインターフェースが使われます。スマホにプリンタアプリをインストールして印刷を実行するためのアプリがインターフェースです。インターフェースは、異なるアプリとプログラムを連携させるために重要な概念となります。
APIの役割
APIの役割は、アプリケーションとプログラムを接続することです。APIは、アプリケーションやソフトウェアなど外部に向けてデータを公開します。自社システムと外部で開発した機能やソフトウェアを共有できるように接続するシステムです。
自社システムにAPIを導入した場合、以下のような共有ができます。
- アプリへの認証機能の共有
- 設置したチャット機能の共有
- アプリからの数値データを取り込み
- 取り込んだ数値データをプログラムで分析
APIは、積極的に公開されてアプリケーション開発の可能性を高められるでしょう。APIのはたらきにより、自社開発中のアプリケーションの処理能力や拡張性の向上が実現できます。
SalesforceにおけるAPIの種類
SalesforceのAPIには、いくつか種類があります。SalesforceのAPIを使うには、目的と合ったAPIの利用が必要です。ここでは、Salesforceで公開されているAPIを紹介しましょう。
SOAP API
SOAP APIは、Simple Object Access Protocolの略称です。SalesforceにおけるAPIの中でも、標準型のAPIとして利用されます。SOAP APIは、マイクロソフト社が発案して開発されたWebサービスへのアクセスプロトコルです。
SOAP APIは、XML言語を用いてメッセージを提供します。XML言語は、Webサービスへのアクセスを最適化しました。SOAP APIは、拡張を目的としているため、設計要素に次のような標準リストへの関連づけがされています。
- WS-Addressing:Webサービスのアドレッシング(演算対象の指定)
- WS-Policy:Webサービスのセキュリティポリシーと相互運用性を標準化
- WS-Security:通信プロトコルの1つでWebサービスのセキュリティ適用手段
- WS-Federation:ユーザIDを保存及び検証から、Webサービスへ連携するプロトコル
- WS-ReliableMessaging:2つのエンドポイント間で相互運用する信頼性の高いメッセージ送信
- WS-Coordination:分散アプリケーションの動作を調整するプロトコル
- WS-AtomicTransaction:相互運用可能な複数処理をまとめたプロトコル
SOAPの特徴は、上記で紹介した標準リストのように、拡張性の高さがあげられます。
SOAP APIを使用する場合は、組織に応じたカスタマイズ機能に対して、サポートされていないビジネスプロセスを組み込みたいときに利用可能です。とくに開発者や高度な機能を求める管理者がカスタム実装を実行するAPIとなります。
REST API
REST APIは、RESTful APIとも呼ばれるSOAP API同様にWebサービスと連携するためのAPIです。RESTは、Representational State Transferの頭文字を取った略称になります。
REST APIは、連携処理にURLが対応づきません。対応づくのは、リソースです。そのため、REST APIはアプリケーション内部のリソースをURLで示せます。操作しようとしているリソースの判別が可能です。標準的なAPIとして、データフォーマットからあらゆるアプリを提供できます。
Bulk API
Bulk APIは、SOAP APIやREST APIと違い、非同期で処理できるAPIです。おもに、1,000件~百万件単位のレコードを処理できます。Bulk APIは、Salesforceのバックグラウンドで実行されて、データローダに利用可能です。Bulk API2.0からは、オプションとして次のプログラムが組み込まれています。
- 2,000件以上のデータセットを非同期でアップロード
- 2,000件以上のデータセットを非同期で照会
- 2,000件以上のデータセットを非同期で削除
Metadata API
Metadata APIは、Salesforce組織のメタデータを記述するAPIになります。記述するメタデータは、次のとおりです。
- スキーマ
- プロセス
- プレゼンテーション
- 認証
- 全般設定
Metadata APIは、メタデータ型やメタコンポーネントと共同で動作します。目的は、開発プロセスにおけるSalesforce組織間のメタデータ連携です。
Streaming API
Streaming APIは、サーバからクライアントPCに向けてデータ更新を通知するためのAPIになります。通知の保証が確立されないため、コアデータ以外の連携に限られるAPIです。データ更新の通知は、プッシュ機能を使って、ほぼリアルタイムでイベントの通知ができます。通知可能なイベントとは、次のとおりです。
- レコードの作成
- レコードの更新
- レコードの削除
- レコードの復元
Apex SOAP API
Apex SOAP APIは、Apexクラスメソッドで公開されるSOAP APIです。Apexは、型重視のオブジェクト指向型プログラミング用語として、Salesforceの拡張機能で使われています。おもに、標準のカスタマイズ機能以外の拡張で実行可能です。
Apex REST API
Apex REST APIは、Apexメソッドで公開されるREST APIの拡張機能になります。Apex REST APIは、Apexクラス単位による実装です。そのため、ユーザやプロファイルを特定して公開する権限セットも作れます。強力なAPIなため、柔軟なカスタマイズ性を持った制御が可能です。
Chatter API
Chatter APIは、Chatter REST APIと同義になります。Salesforce組織の社内用SNS「Chatter」へのアクセスを実行するAPIです。プログラムのアクセスは、次の提供先と連携します。
- Chatterフィード
- ユーザ
- グループ
- フォロワー
- ファイル
Chatter APIの統合対象は、次のとおりです。
- モバイルアプリケーション
- イントラネットサイト
- サードパーティWebアプリケーション
Chatter APIを利用するには、Chatterを有効化しておく必要があります。
Tooling API
Tooling APIは、Salesforceアプリケーション用のカスタム開発ツールを作るための開発者向けAPIです。Tooling APIでは、ApexCode情報を取得して、SOAPやRESTでアクセスします。
ユーザインターフェース API
ユーザインターフェース APIは、カスタムSalesforceアプリケーションのユーザインターフェース作成APIです。ユーザと顧客の操作性を高めるためのカスタムアプリケーション作成に役立ちます。
Analytics REST API
Analytics REST APIは、Salesforceの解析機能とプログラミングを繋ぐAPIです。Analytics REST APIは、Chatter REST APIにもとづいています。データセットバージョンのリスト取得やダッシュボードの作成も可能です。
SalesforceにおけるAPIの注意点
SalesforceにおけるAPIには、注意が必要な部分があります。
- APIアクセスは、Professional Edition組織の場合、すべてのリクエストが有償
- Essential Edition以下では、APIの利用不可
まとめ
SalesforceのAPIについて、解説してきました。
SalesforceにおけるAPIでは、多彩なAPIがあることをご理解いただけたでしょうか。
Salesforceの特徴は、外部ツールの連携によるデータ活用です。データを活かすために必要なAPIの概念は、接続目的ごとで変わります。それぞれのAPIについて、特徴を知っておけば、拡張をスムーズに進められるでしょう。
弊社ではSalesforce支援も行っておりますので、是非下記リンクよりお気軽にお問い合わせください。
<Salesforce>
弊社ではSalesforceをはじめとするさまざまな無料オンラインセミナーを実施しています!
>>セミナー一覧はこちら
医療業界に特化した営業支援、顧客管理(SFA/CRM)のコンサルティングも提供しております。こちらもぜひお気軽にお問い合わせください。
>>顧客管理(SFA/CRM)のコンサルティングの詳細はこちら