コラム詳細

Salesforce APIとは?連携する目的や12種類の特徴を解説

2024年07月09日

  • Salesforce
  • MA
  • マーケ知識

はじめに
セラクCCCのSalesforce推進部のNです。Salesforceに機能を追加するため、外部ツールと連携する際、重要な役割を果たすのが「Salesforce API」です。

しかし種類が多く、どれを用いたらよいか迷う担当者もいることでしょう。本記事ではSalesforceが提供する12種類のAPIの特徴や活用シーンについて解説します。

 

SalesforceのAPIとは?

APIは「Application Programming Interface」の略称で、アプリケーションの開発における接点を提供します。たとえば、SalesforceのAPIを使用することで、マーケティングオートメーションツールや名刺管理システムなどの外部プラットフォームと統合し、新しい機能を実現できます。

このように、異なるソフトウェア間の接続や統合を「API連携」と称し、実現することで複数のソフトウェアの機能を互いに利用し合うことが可能になります。またその結果、機能の追加や利便性の向上など、ソフトウェアの価値を高めることが期待されます。

 

APIを使用する目的

API連携の主な目的は、Salesforceにもともと搭載されていない機能を、ほかのツールと組みあわせることにより補い、システムの機能性を拡張することにあります。

そして、Salesforceが提供するAPIを活用することで、企業は自社の特定のニーズにあわせたカスタムシステムを開発することが可能になります。一般論として、API連携では以下のことが実現できます。

API連携でできること

  • ・システムに外部ツール内のデータを取り込む
  • ・システムに取り込んだデータや保有しているデータを外部ツール機能で分析する
  • ・外部ツールのチャット機能などをシステムに追加する

 

なお、APIによるSalesforceとSaaSツールの連携についてはこちら(APIによるSalesforceとSaaSツールの連携とメリットについて解説!)を参照ください。

 

【全12種類】Salesforce APIの一覧と特徴

Salesforceは、さまざまな用途にあわせたAPIを提供しています。また、SalesforceでAPIを活用する際には、その目的に最適なAPIを選択することが重要です。

ここからは、2024年4月時点でSalesforceが提供する12種類のAPIについて概説します。

 

Salesforce API一覧(名称|種別|データ形式|通信)

  • 1.SOAP API|SOAP(WSDL)|XML|同期
  • 2.REST API|REST|JSON、XML|同期
  • 3.Connect REST API|REST|JSON、XML|同期 (写真の処理は非同期)
  • 4.Apex SOAP API|SOAP (WSDL)|XML|同期
  • 5.Apex REST API|REST|JSON、XML、カスタム|同期
  • 6.Analytics REST API|REST|JSON、XML|同期
  • 7.GraphQL API|GraphQL|JSON|同期
  • 8.Tooling API|REST 、SOAP (WSDL)|JSON、XML、カスタム|同期
  • 9.Bulk API 2.0|REST|CSV|非同期
  • 10.Pub/Sub API|gRPC 、プロトコルバッファ|Binary|非同期
  • 11.User Interface API|REST|JSON|同期
  • 12.Metadata API|SOAP(WSDL)|XML|非同期

 

SOAP API

SOAP APIは、Salesforceが提供するAPIの中でもとくに歴史があり、幅広い用途で用いられる標準的なAPIです。とくに、ERPシステムや会計ソフトウェアとの連携は、企業にとって重要な業務プロセスの自動化と効率化をもたらします。このAPIの核となるのは、XMLデータ形式への準拠です。

XMLはその自由な構造化能力と、データの送受信や管理作業の簡略化が可能な柔軟性で、さまざまなアプリケーション間で広く利用されています。高い拡張性があり、開発者は必要に応じて要素名やデータ構造を自由に定義できるため、特定のビジネス要件にあわせたカスタマイズが可能になります。

 

REST API

REST APIはRESTful APIとも呼ばれ、Salesforceの機能やデータにアクセスするための基本的な手段のひとつです。このAPIはその柔軟性と拡張性から、とくにモバイルやWebアプリケーションの統合、または大規模かつ複雑なタスクの実行に適しています。開発者にとってのREST APIのメリットは、そのシンプルさと開発のしやすさにあります。HTTPメソッドの使用、JSON形式でのデータ交換など、広く普及しているWeb技術に基づいているため、迅速に開発を進めることが可能です。

また、URIによる直感的な操作性とステートレスな通信による拡張性の高さも、開発者にとって大きなメリットとなります。REST APIについてはこちら(Salesforceの「REST API」の概要と、外部から使用するための設定を解説)を参照ください。

 

Connect REST API

Connect REST APIは、Chatter APIとも呼ばれ、Salesforceの「Chatter」(リアルタイムでデータ共有ができる機能)に特化したAPIです。顧客やパートナー、従業員が使用するコミュニティプラットフォームの開発や管理をサポートします。

このAPIを使用することで、Salesforce内のデータやプロセスをコミュニティと統合し、ユーザ間での情報共有を促進するアプリケーションを開発できます。

REST原則に基づき設計されており、HTTPリクエストを通じて情報の取得、投稿、更新、削除などを行えます。JSON形式でのデータ交換を採用しているため、Webやモバイルのフロントエンド技術との互換性が高く、開発者はより容易にコミュニティ向けのインターフェイスを構築できます。

 

Apex SOAP API

Apex SOAP APIは、Salesforceのプラットフォーム上でカスタマイズ可能なWebサービスを開発するために使用されます。Apexプログラミング言語によって公開されるSOAPベースのAPIです。

また、Apex SOAP APIは、異なるシステム間でのデータ共有や業務プロセスの自動化など、ビジネスの要求に応じた柔軟なソリューションを提供する目的で使用されます。セキュリティ面では、Apex SOAP APIはOAuth 2.0認証とセッションID認証の2つをサポートしており、安全にアクセス制御を行うことが可能です。

 

Apex REST API

Apex REST APIは、Salesforce上で提供される、Apexプログラミング言語を用いてカスタムREST APIを作成するための拡張機能です。このAPIを使うことで、開発者はApexクラスに定義されたメソッドをRESTfulなWebサービスとして公開でき、細かい粒度でのアクセス制御やカスタムビジネスロジックの実装が可能になります。

たとえば、Salesforce内で独自に定義された複合主キーをもつレコードの管理が挙げられます。これは、複数のフィールドを連結して一意の識別子として扱う場合に便利で、開発者はこのAPIを使用して、そのような特殊なデータ構造を効率的に扱えるカスタムロジックを実装できます。

 

Analytics REST API

Salesforce内で利用可能なAnalytics REST APIは、解析用のデータ集合体「データセット」や、これらのデータを視覚化した「レンズ」といった分析要素に対してアクセスする手段を提供します。このAPIを活用することにより、Salesforceの強力な分析機能を、外部のシステムやアプリケーションと容易に連携させることが可能になります。

このAPIの使用例としては、Salesforce内に存在する豊富なレポートや多様なダッシュボードへのアクセスが挙げられます。さらに、ユーザはデータセットの異なるバージョンをリスト化して確認、新たなAnalyticsアプリケーションの開発とその管理が可能です。

 

GraphQL API

GraphQL APIは、効率的なデータフェッチを可能にするAPI設計のひとつで、開発者がクライアントからの1回のリクエストで必要なデータのみを正確に要求し、取得できるようにします。これにより、REST APIの使用時にしばしば直面する問題、つまり過剰なデータの取得や、必要なデータ取得のために複数のリクエストを要する、といった問題を解決します。

たとえば、REST APIではユーザの詳細情報を取得する際に、必要ない情報も一緒に取得されることがありますが、GraphQLでは「電話番号だけ」や「電話番号とメールアドレスだけ」といった具体的なデータ要求が可能です。

 

Tooling API

Tooling APIは、Apex、Visualforce、およびその他のカスタムアプリケーションの開発と管理を効率化するために設計されたAPIです。また、Tooling APIは、セールスフォース・ジャパンが提供するビジネスアプリケーションプラットフォームであるForce.comの拡張性を高める重要な役割を果たします。

Force.com上で、マーケティング管理や契約管理などの特定の業務プロセスに対応したアプリケーションをカスタム開発する際に、Tooling APIを利用することで開発プロセスが大幅にスムーズになります。

 

Bulk API 2.0

Bulk APIはSalesforceが提供する、大量のデータレコードを非同期に処理することを目的としたAPIで、とくに1,000件から百万単位のレコードの一括処理に適しています。Bulk APIはSalesforceのバックエンドで動作し、データのアップロード、照会、削除などのプロセスを効率的に実行します。

Bulk APIのバージョン2.0では、2,000件を超えるデータセットの非同期処理が可能になりました。この拡張機能により、ユーザはより大規模なデータセットのアップロード、照会、削除作業を非同期で実行できるようになりました。

 

Pub/Sub API

Pub/Sub APIは、gRPCプロトコルとHTTP/2通信を基盤としており、リアルタイムのイベント駆動型データ交換を実現するAPIです。このAPIを利用することで、アプリケーション間での即時的な情報共有やイベントの通知が可能になります。

公開されたイベントはイベントバスに72時間保持されるため、ネットワーク接続が一時的に失われた場合でも、その期間内のイベントデータを後から取得し、処理することが可能です。

具体的には、Pub/Sub APIを活用して、特定のビジネスイベントが発生した際に自動的に関連するシステムやパートナーに通知を送信するようなケースが考えられます。

 

User Interface API

User Interface APIは、Salesforce上でカスタムUIを構築するためのAPIで、ユーザや顧客の操作体験を向上させるカスタムアプリケーションの開発をサポートします。このAPIを使用することで、開発者はレコードの操作、リストビューのカスタマイズ、アクションの統合、お気に入りの追加など、ユーザが直感的に扱えるインターフェイスの開発が可能になります。

また、2015年にSalesforceによって導入された「Lightning Experience」では、このUser Interface APIを利用してUIの柔軟なカスタマイズが実現されています。

 

Metadata API

Salesforceにおいては、「ビジネスデータ」と「メタデータ」という2つの重要なデータタイプが存在します。ビジネスデータは、顧客情報や取引記録などのレコードそのものを指し、一方でメタデータは、データベースの構造や組織設定など、レコード以外の情報を含みます。

これらのメタデータを効率的に操作するためにMetadata APIが用いられます。Metadata APIは、その柔軟性においていくつかの特徴をもっています。まず、複数のメタデータオブジェクトをマージ(結合)することで、複雑な設定やカスタマイズを一括で行うことが可能です。また、静的なメタデータだけでなく、動的に変更されるメタデータにも対応しているため、幅広いシナリオに適応します。

 

SalesforceでAPI連携を行う際の注意点

SalesforceでAPI連携を行う際は注意すべき点もあります。以下の2点について詳しく解説します。

 

連携先システムとの互換性を確かめる

Salesforceと古い既存システムを連携させる際、最も重要な考慮事項は互換性です。連携を検討する際には、既存システムがSalesforceと効果的に通信できるか、また、将来的に既存システムを更新またはリプレースする場合にも、その連携が維持できるかどうかを慎重に評価する必要があります。

とくに、古いシステムにあわせて特定のAPI連携をした場合、システムの更新やリプレースを行う際に、既存の連携方法が適切でなくなり、連携の再設定や修正が必要になる場合があります。

 

部門ごとのカスタマイズは極力行わない

組織内の異なる部門がそれぞれ独立してAPI連携を行うことは避けましょう。部門ごとのカスタマイズは部門間での連携を非効率にし、組織全体の業務プロセスに支障をきたす可能性があります。

統一されたAPI連携戦略を採用することで、部門間のデータや情報の流れをスムーズにし、全体としての作業効率と協働を促進できます。

 

まとめ
APIは、Salesforceのデータや機能をほかのシステムやアプリケーションと連携し、機能を拡張させる上で非常に有効です。Salesforceが提供する12種類のAPIを活用することで、自社の特定のニーズにあわせたカスタムシステムを開発できます。とはいえ12種類のAPIから、目的に最適なAPIを選択していくのはなかなか容易ではありません。自社だけで対応することが難しい場合、Salesforceの導入や活用に詳しいセラクCCCへご相談ください。

 

セラクCCC はSalesforce定着・活用支援トップクラスの公式コンサルティングパートナーとして、全国400社(2024年6月時点)を超える実績と300名(2024年6月時点)を超える専門コンサルタントが在籍しており、内製化支援をはじめ複合的なクラウド活用のご提案が可能です。Salesforceの定着・活用支援や運用支援、トレーニングサービス、常駐・リモート支援など、さまざまな課題に対応できるサポート体制があります。Salesforceでのお困りごとがありましたら、当社カスタマーサクセスチームの無料相談から、ぜひお問い合わせください。また、データの可視化などレポートについて解説しているこちらの資料「レポートを攻略する10の技」もあわせてご活用ください。

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

  • TOP
  • コラム一覧
  • Salesforce APIとは?連携する目的や12種類の特徴を解説

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