この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Chatter REST API アーキテクチャ

Chatter REST API を使用するには、認証方法、要求の制限、サポートされるデータ形式など、そのアーキテクチャの基本的な特性をいくつか理解する必要があります。
Chatter REST API のリソースとアーキテクチャには次の重要な特性があります。
認証
Chatter REST APIOAuth 2.0 を使用します。

Salesforce には、一般に HTTPS を使用してセキュアにアクセスします。

メモ

CORS (クロスオリジンリソーススクリプティング)
Chatter REST API では、CORS (クロスオリジンリソース共有) がサポートされます。Web ブラウザで JavaScript からこの API にアクセスするには、スクリプトを提供するオリジンを CORS ホワイトリストに追加します。CORS を使用して Chatter REST API にアクセスするを参照してください。
デフォルトの HTML エンティティ符号化
Chatter REST API 文字列は、デフォルトでは最小限に符号化された HTML エンティティであり、多くの場合は HTML タグ間の表示に適していますが、他の HTML コンテキストには適しているとは限りません。

ネイティブのモバイルアプリケーションなど、非 HTML コンテキストの場合、Chatter REST API クライアントが、要求内の X-Chatter-Entity-Encoding HTTP ヘッダーを false に設定して、未加工 (符号化されていない) の出力を要求する場合があります。

詳細は、「レスポンスボディの符号化」を参照してください。

JSON と XML のサポート
JavaScript Object Notation (JSON) 形式は UTF-8 でサポートされます。日時情報は ISO8601 形式です。
XML 逐次化は SOAP API と類似しています。XML 要求は UTF-8 および UTF-16 でサポートされ、XML 応答は UTF-8 で提供されます。
デフォルトでは、応答は JSON 形式です。XML を指定するには、HTTP ヘッダー Accept: application/xml を使用します (JSON を指定するには、Accept: application/json を使用します)。
戻り値の形式を指定するには、.json または .xml のいずれかをリソースの URI に付加します。たとえば、/chatter/feeds/filter/me/001/feed-items.xml です。

すべての機能が XML をサポートしているわけではありません。

メモ

制限
Chatter REST API 要求はレート制限の対象になります。Chatter REST API には、ユーザ、アプリケーション、および時間ごとのレート制限があります。レート制限を超過すると、すべての Chatter REST API リソースがユーザとアプリケーションの両方に 503 Service Unavailable エラーコードを返します。
アプリケーションでの認証に OAuth トークンではなく通常のセッション ID が使用されると、そのアプリケーションの要求には、関連付けられた OAuth コンシューマー鍵がない場合、要求の一般的な制限が割り当てられます。  ただし、この場合、ユーザがアクセスし、同様にセッション ID で認証を行う他のアプリケーションも、同じ要求の割り当てを共有することになります。たとえば、アプリケーションが通常のセッション ID を使用してユーザを Salesforce に接続したとします。このユーザには、使用しているアプリケーションに関係なく、同じ数の要求が割り当てられます。アプリケーションごとに別個の要求��制限はなくなり、すべてのアプリケーションが同じ制限を使用するようになります。このため、可能な場合は常にクライアントで OAuth トークンを使用することをお勧めします。

すべての状況で指定されたリソースが規定の制限まで使用できるとは限りません。たとえば、負荷、パフォーマンスやその他のシステムの問題によってはその制限に達する前に使用できなくなる場合があります。規定の制限は、通知なく変更される場合があります。アプリケーションは、使用可能な要求を効率よく利用し、503 エラーコードを適切に処理する必要があります。

メモ

ローカライズされた名前と時刻
Chatter REST API は、名前と日時の両方をユーザのロケール設定にローカライズします。ユーザは、個人情報にロケールを設定します。ユーザがロケールを設定していない場合、Chatter REST API は組織のデフォルトのロケールを使用します。
クライアントは、組織で使用できる任意のロケールを使用して、デフォルトのロケールを上書きできます。Accept-Language HTTP ヘッダーを使用して、API 要求のロケールを上書きします。

ISO-8601 の日付形式は常に GMT です。

メモ

UI のテーマ
クライアントは、X-Connect-Theme HTTP ヘッダーを使用して任意の API 要求の UI テーマを指定できます。2 つのテーマがあり、各テーマには独自の motif アイコンのセット、ClassicSalesforce1 があります。テーマ名は大文字と小文字を区別します。
メソッドの上書き
使用する HTTP ライブラリで任意の HTTP メソッド名の上書きまたは設定が許可されていない場合、POST 要求を送信し、要求パラメータ _HttpMethod で HTTP メソッドを上書きすることができます。次に例を示します。
1https://instance_name/services/data/v32.0/chatter/
2/chatter/users/me/conversations/03MD0000000008KMAQ
3?_HttpMethod=PATCH&read=true

_HttpMethod パラメータでは、大文字と小文字が区別されます。すべての値の大文字と小文字を正しく使用してください。

メモ

ステートレス
クライアントからサーバへの各要求には、要求を理解するのに必要なすべての情報が含まれている必要があり、サーバに保存されたコンテキストは使用されません。ただし、リソースの表現は URL を使用して相互に連結されるため、クライアントはステート間を移動して処理を行うことができます。
統一されたインターフェース
すべてのリソースには、HTTP を介した汎用インターフェースを使用してアクセスします。