この記事の目次
REST APIとは?

APIと「REST」APIの違い
REST APIは、RESTと呼ばれる設計原則に従って策定されたAPIということを解説しましたが、具体的にRESTでないAPIと、REST APIでは何が違うのでしょうか。 ユーザ情報を取り扱う場合を例にとって、2つの違いを解説したいと思います。 RESTの原則に従っていないAPIでは、ユーザの情報を作成や取得、削除などをする場合、それぞれの処理に対応するURLを作成します。つまり、/CreateUserInfo
や
/GetUserInfo
のような形で、処理に対応したシステム設計をします。
しかし、RESTの原則に従って設計を行う場合、処理ではなく、リソースにURLを対応させます。つまり、
/UserInfo
という、ユーザ情報を取り扱うためのURLを1つ用意するだけです。
これだけではユーザ情報をどうするのかが分からないため、ここでPOSTやGETなどの、HTTPのリクエストメソッドを使用します。
このように、RESTの原則に従って設計されたAPIであれば、URLが1つで済むのに対し、RESTの原則に従っていないAPIは、処理の数だけURLを用意しなければなりません。
REST APIのメリット
REST APIのメリットは大きく分けて3つあります。 一つ目のメリットは、リソースをURLなどのURIで示すことで、リソースの参照が容易になることです。 さらに、URIに規則性が生まれ、システムを変更する時や規模を拡張する際に非常に便利です。 二つ目は、状態を表すデータをシステムが保持することがなくなるため、利用者や処理の増加に対応しやすくなるということです。 状態をURLで示すのではなく、HTTPのリクエストメソッドを使用するため、システムが状態を表すデータを保存する必要がありません。 三つ目は、他システムとの連携などがしやすくなる、ということです。 RESTの原則に則って作られたWebアプリなどは、インターフェースが統一されることで、互換性の面で優れていることなど、様々な面で連携などがしやすくなっています。Salesforce Lightning Platform REST APIとは?

SOAP APIとは?
SOAP APIとは、「Simple Object Access Protocol」の略で、Salesforceでの標準的なAPIとされており、レコード操作以外にもユーザパスワードの変更やメールの送信など、様々な機能が用意されています。 効率性ではBulk APIに劣りますが、大容量のデータ操作も可能であり、非常にユーティリティ性のあるAPIになっています。 SOAPはRESTとは違い、原則などではありません。 Protocolの文字の通り、SOAPとはプロトコルであるため、コンピュータ同士が通信を行う際のルールになります。 また特徴として、HTTPリクエストとレスポンスにXMLを使ってデータのやり取りを行うということが挙げられます。Bulk APIとは?
Bulk APIとは、REST規則に基づいて、大規模なデータセットの操作に最適化されたAPIのことです。Salesforceは、マルチテナント環境で実行されているため、リソースの独占の危険性があります。 Salesforceでは、この危険性をなくすため、Apexのトランザクション単位で処理のカウントを行い、一定数を超えるとエラーとなる、「ガバナ制限」というものが設けられています。 Bulk APIは、このガバナ制限を回避するためにも利用されます。 どのようにして大規模データセットの操作に最適化させているかというと、処理をサーバサイドで非同期にしているため、効率的に処理時間やAPIコールの数を抑えることを達成しています。 使用前の注意点として、結果を受け取るためにポーリングを行わなければならない、ということを理解しておかなければなりません。APIについての理解を深め、作業の効率化とリソースの有効活用を!

この記事の監修者・著者

-
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞