Chatter REST API アーキテクチャ
Chatter REST API を使用するには、認証方法やサポートされるデータ形式など、そのアーキテクチャの特性をいくつか理解する必要があります。
- 認証
- Chatter REST API は OAuth 2.0 を使用します。
- CORS (クロスオリジンリソーススクリプティング)
- Apex REST、Bulk API、Chatter REST API、Lightning API、Lightning Out、REST API、Wave REST API では、CORS (クロスオリジンリソース共有) がサポートされます。Web ブラウザで JavaScript からこれらの API にアクセスするには、スクリプトを提供するオリジンを CORS ホワイトリストに追加します。「CORS を使用した、サポートされた Salesforce API、Apex REST、および Lightning Out へのアクセス」を参照してください。
- デフォルトの HTML エンティティ符号化
- Chatter REST API 応答は、デフォルトでは最小限に符号化された 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-elements.xml です。
- ローカライズされた名前と時刻
- Chatter REST API は、名前と日時の両方をユーザのロケール設定にローカライズします。ユーザは、個人情報にロケールを設定します。ユーザがロケールを設定していない場合、Chatter REST API は組織のデフォルトのロケールを使用します。
- クライアントは、組織で使用できる任意のロケールを使用して、デフォルトのロケールを上書きできます。任意の API 要求のロケールを上書きするには、Accept-Language HTTP ヘッダーを使用します。
- Salesforce ID の長さ
- レスポンスボディでの Salesforce ID は常に 18 文字です。リクエストボディでは、15 文字または 18 文字の ID を使用できます。
- UI のテーマ
- クライアントは、X-Connect-Theme HTTP ヘッダーを使用して任意の API 要求の UI テーマを指定できます。2 つのテーマがあり、各テーマには独自の motif アイコンのセット、Classic と Salesforce1 があります。テーマ名では、大文字と小文字が区別されます。
- メソッドの上書き
- 使用する HTTP ライブラリで任意の HTTP メソッド名の上書きまたは設定が許可されていない場合に HTTP メソッドを上書きするには、要求パラメータ _HttpMethod を使用します。
1POST https://instance_name/services/data/v39.0/chatter/ 2/chatter/users/me/conversations/03MD0000000008KMAQ 3?_HttpMethod=PATCH&read=true