このページはAIで翻訳されています。コミュニティによるレビューはまだ行われていません。 英語で読む

ブログ · 2023年9月7日 · Steve Simpson · 統合

Salesforce のタンゴ:クライアントとサーバーの API ダンスを理解する

はじめに

Salesforce で API を呼び出すときのクライアントとサーバーのやり取りを理解するための知見です。stevetechart.com の統合シリーズの重要な側面です。

Salesforce のタンゴ:やり取りのダンス

API 呼び出しという複雑なダンスでは、ステップを理解することが欠かせません。これから話す図は、クライアントとサーバーの間のダンスのステップ、つまりやり取りを示しています。

図:API 呼び出しでクライアントとサーバーがそれぞれ担うもの:場所、OAuth、プロトコル、契約、ペイロード、トレースとデバッグ、エラー

サーバー側の責任

Salesforce と外部のどちらがサーバーになっても、責任は同じです。サーバーはアクセスできる状態でなければならず、特定のポート(SSL なら通常443)でリスナープロセスを持ち、OAuth を使うなら認証サーバーも必要になるかもしれません。サーバーはプロトコルを定義し、必要なファイルをクライアントに提供し、ペイロードを決め、受け取ったペイロードと内部処理のパフォーマンスをトレースできます。

クライアント側の責任

クライアントはエンドポイントを知り、セッショントークンを扱い、セッションの期限切れのエラーに備えなければなりません。適切なプロトコルを呼び出し、データを正しくシリアル化し、戻り値を扱う必要があります。クライアントは送信するペイロードと受け取るレスポンスをトレースし、さまざまなエラーを扱えますが、エラーを捕捉して対処する責任はサーバーにあります。

サーバーとしての Salesforce

図:外部クライアントが接続アプリケーションと統合ユーザーを通じて認証した後に呼び出せる Salesforce API(SOAP、REST、Bulk、Apex SOAP と REST、メタデータ、Tooling、ストリーミング、Pub/Sub)

Salesforce がサーバーになる場合、OAuth の設定には接続アプリケーション、統合用のプロファイル、統合ユーザーが必要になることがあります。クライアントは、必要に応じてさまざまな API とプロトコルを使って Salesforce を呼び出す、さまざまな外部のエンティティです。

クライアントとしての Salesforce

図:外部サーバーを呼び出すクライアントとしての Salesforce。Marketing Cloud、Account Engagement、B2C Commerce へのコネクタ、送信 Apex SOAP・REST コールアウト、外部サービス、アウトバウンドメッセージ、OData による Salesforce Connect、Heroku Connect

Salesforce はクライアントとしても動作し、外部サーバーへ送信呼び出しを行えます。この処理では、WSDL ファイルのインポート、Apex の生成、SOAP・REST サーバー向けの指定ログイン情報の設定が必要になることがあります。送信の仕組みごとに異なる設定が必要で、どれも先に説明したクライアントとサーバーのプロトコルに従います。

まとめ

Salesforce の API 呼び出しにおけるクライアントとサーバーのやり取り、つまりダンスのステップを理解することは、API を効率よく効果的に使ううえで欠かせません。ここでは両側の責任を掘り下げ、外部クライアントと、さまざまな役割を担う Salesforce のシナリオを見てきました。

お楽しみに

さらなる知見やヒントは、この www.SteveTechArc.com と YouTube チャンネル @SteveTechArc (opens in a new tab) で。チャンネル登録して、Salesforce と、それをほかのシステムとどう統合できるかの理解を深めてください。

アーキテクト仲間やアーキテクトを目指す人たちと統合の知識を共有して、世界を変える手助けを!

テクノロジーのビュッフェを深く味わい、これからも存分に楽しんでください。Stay nerdy!

文字起こしには AI を活用

STA 1.3