コラム詳細

Salesforceの「REST API」の概要と、外部から使用するための設定を解説!

2023年04月13日

  • Salesforce
  • 使い方
  • 設定・管理

はじめに

CRM(顧客管理システム)・SFA(営業支援システム)ツールとして、豊富な機能をもつSalesforce。ただ、自社の業態にピッタリと合わせるため、なんらかの外部ツールと連携させる必要が生じるケースも少なくはないようです。その際、活用されることが多いのが「REST API」です。そこで今回は、SalesforceのREST APIの概要と、設定方法について解説します。SalesforceとAPI連携が可能なBIツールは年々増えているものの、REST APIの詳しい使い方がわからない…と、お困りの担当者は必読です。

 

また、営業DXを加速させるデータ分析のポイントについて解説しているこちらの資料「営業データ分析Salesforceで分析するための基本データ項目の考え方 ~基礎編~」と併せてご活用ください。

 

Salesforceと連携させる際の「API」とは?

「REST API」について解説する前に、そもそも「API」が何なのかをご説明します。APIとは「Application Programming Interface」の頭文字を取った名称で、アプリケーションやソフトウェアと、プログラムとを繋ぐための機能です。
パソコンの場合、USBポートなどを介して周辺機器と接続できます。APIも同様に、なんらかのプログラム(本稿の場合はSalesforce)と、外部ツールやデータとを連携させる、インターフェイスの一種だと考えておけば間違いないでしょう。
ビジネスシーンで必要とされる、さまざまな機能をもつSalesforceですが、APIによって外部アプリや自社構築ツールなどと連携させたり、外部データを取り込んだりすることで、より高度な活用法が可能になるのです。

 

Salesforceの「REST API(RESTful API)」の概要や種類について

IT系メディアの中には、REST APIを「RESTful API」と呼ぶものもありますが、意味は同じなので、本稿では「REST API」で統一します。
APIにはいくつかの種類がありますが、今回はSalesforceをカスタマイズする際に用いるプログラミング言語「Apex(エーペックス)」のAPIである、「REST API」について概要や種類を解説します。
RESTは「REpresentational State Transfer」の頭文字を取った略称で、簡単に説明すると、Web上のインフラをそのまま利用し、簡易な手順でWebサービスへのアクセスを可能にする仕組みのこと。次の4原則に則って設計されたAPIです。

 

RESTの4原則

(1)統一インターフェイス(Uniform Interface)
あらかじめ定義・共有された方法で情報をやり取りするルール。たとえばWebの場合なら、HTTPメソッドであるGET・POST・PUT・DELETEなどで情報をやり取りする…という決め事のことです。

 

(2)アドレス可能性(Addressability)
すべての情報が一意のURI(識別子)をもっていて、提供する情報の場所、名前などをURIによって表現できるようにするルール。Webの場合は通常、URLで識別子が与えられます。

 

(3)接続性(Connectability)
やり取りする情報に、ハイパーリンクを含めることができるようにするルール。1つのリンクから別の情報にリンクすることが可能なので、RESTful(RESTの4原則を満たしている)システム同士なら、情報連携も円滑に行えることになります。

 

(4)ステートレス性(Stateless)
ステートとは「状態」のことで、これがless(レス)なので、「状態が無い」という意味です。つまり、RESTは「やりとりを1回ごとに完結させる」というルールに則って設計されます。

 

SalesforceのRESTの種類について

REST APIには、大別して4つの種類があります。それぞれ、次のような特徴があります。

 

REST API
ブラウザアプリやモバイルと連携して、軽量なデータをやり取りする際に適したAPI。簡単に実装できるという特徴があります。

 

Apex REST API
RESTful Webサービスとして公開されたApexを起動できるAPI。Webサービスに対し、HTTPプロトコルでアクセスし、データ操作が行える仕組みです。

 

Chatter REST API
Salesforceの「Chatter」(リアルタイムでデータ共有が行える機能)を操作するのに適したAPI。他のAPIでもChatterの操作は可能ですが、一部操作ではChatter REST APIが必須となります。

 

Analytics REST API
マーケティングデータを整理・分析する「Analytics」の、主要3コンポーネント(データセット、レンズ、ダッシュボード)に、各種プログラムからアクセスする際に必要となるAPIです。

 

SalesforceのREST APIを活用するメリットとは?

Salesforceに限らず、さまざまなクラウド型サービスで活用されているREST API。使用メリットをひと言で表すと、「シンプルで効率的な開発・操作が可能になること」だと言えるでしょう。
一般的なWeb技術であるHTTPメソッドやJSON形式などを採用しているので、開発が容易な上に、URIの構造が決まっているので理解しやすく、ステートレス性のおかげで拡張可能性も向上します。REST APIを使用する3大メリットは、次の通りです。

 

リソースの参照が容易

リソースをURLなどのURIで示すことで、情報の“出どころ”と情報名などが参照しやすく、URIに規則性が生まれるため、システムを変更する際、規模を拡張する際に便利です。

 

利用者や処理の増加への対応が容易

「状態」を表すデータをシステムが保持しないので、利用者数や処理数の増加に対応しやすくなります。状態をURLで示さず、HTTPのリクエストメソッドを使用するため、システムが状態を表すデータを保存する必要がありません。

 

他システムとの連携が容易

RESTの原則に則って作られたアプリなどは、インターフェイスが統一されることで互換性の面で優れており、さまざまな機能を連携させやすくなります。

 

その他、REST APIは階層型構造を採用しているので、他の開発者がリソースの構造を理解しやすい、Webと同じようにクライアントとサーバが独立している構造なので、なんらかの変更を加えても互いに影響し合わないなど、数多くのメリットがあります。

 

SalesforceのREST APIを外部から使用するための設定

SalesforceでREST APIを使用するには、要求を正常に送信するためのアクセストークン(Webサーバが発出したユーザ認証情報)が必要です。アクセストークンは、ユーザ名とパスワードの認証フローを使用して取得できます。
要求にログイン情報を含める必要がない「OAuth認証フロー」を使用したアクセストークン取得が推奨されているので、今回はその方法を解説します。なお、OAuth認証を利用する場合、事前にSalesforceで接続アプリケーションを作成する必要があるので、その設定からはじめます。

 

(1)設定から[アプリケーション]→[アプリケーションマネージャ]を開き、[新規接続アプリケーション]をクリック

 

新規接続アプリケーション
<新規接続アプリケーション>

 

(2)以下の必要情報を入力

 

必要情報入力

<必要情報入力>

 

  • ・接続アプリケーション名:任意の名称
  • ・API参照名:任意の名称(デフォルトでは接続アプリケーション名と同じ)
  • ・取引先責任者メール:任意のメールアドレス

 

(3)[OAuth設定の有効化]にチェックを入れ、コールバックURLと、許容するOAuthの範囲を設定して保存

 

OAuth設定の有効化
<OAuth設定の有効化>

 

  • ・コールバックURLは、デスクトップアプリであればlocalhostの使用していないポート番号、WebアプリケーションであればSalesforceがコールバック送信する先のURI。
  • ・コールバックURLはセキュアである必要があるためhttps://を指定。
  • ・許容するOAuth範囲とは、たとえば「データへのアクセスと管理」「ユーザに変わっていつでも要求を実行」「基本情報へのアクセス」など。

 

(4)「サーバ上で変更が有効になるまで○○分お待ちください」のメッセージが表示されたら、[次へ]を選択

 

変更が有効になるまで最大 10 分かかる場合があります。親組織を削除すると、OAuth 設定が有効になっているすべての接続組織も削除されます

<変更が有効になるまで最大 10 分かかる場合があります。親組織を削除すると、OAuth 設定が有効になっているすべての接続組織も削除されます>

 

(5)接続アプリケーションを管理する画面に移行するので、API(OAuth設定の有効化)内の「コンシューマ鍵」と「コンシューマの秘密」を確認

 

コンシューマキーと秘密

<コンシューマキーと秘密>

 

「コンシューマ鍵」と「コンシューマの秘密」

<「コンシューマ鍵」と「コンシューマの秘密」>

 

これらを入力パラメータとして、SalesforceのOAuthを利用するクライアントアプリケーションから利用することができます。

 

まとめ

今回は、SalesforceのREST APIの概要や外部から使用する際の設定方法を紹介しました。やってみたが難しい、わからないなどの困りごとがありましたら、ご相談ください。
当社には300名(23年5月時点)を超える専門コンサルタントが在籍し、お客様側の視点からSalesforceのサポートサービスを行っています。効率的なSalesforceの活用を、当社のカスタマーサクセスチームがサポートいたしますので、ぜひセラクCCCの無料相談からお問い合わせください

Salesforceでお悩みなら、
まずはお気軽に
お問い合わせください

  • TOP
  • コラム一覧
  • Salesforceの「REST API」の概要と、外部から使用するための設定を解説!