SDKを使用してGenesys Cloud Platform APIを呼び出す
管理パッケージで弊社のSDKを使用して、SalesforceでGenesys Cloud Platform APIを呼び出すことができます。 SDKはSalesforce Apexプログラミング言語を使用しています。
前提条件
特定のユーザー コンテキストに関連付けられておらず、OAuth クライアントの権限で許可されている任意の Platform API を呼び出すことができます。 OAuthクライアントは、Salesforceの認証設定用に作成したOAuthクライアントです。 詳細については、以下を参照してください。 認証.
当社のSDKにアクセスするには、 名前空間。 休息クラスからSDKにアクセスする例については、を参照してください。 Genesys Cloud for Salesforce SDKの例 (GitHub)。
休憩クラス
Genesys Cloud for Salesforceを介してGenesys Cloud Platform API上で動作するメソッドが含まれています。
ネームスペース
purecloud.SDK.Rest
利用先
SalesforceのGenesys Cloudを介してPlatform APIでデータを取得、POST、PUT、または削除するには、これらの方法を使用します。
残りの方法
以下のメソッドは、Restクラスで使用できます。
プラットフォームAPIエンドポイントにHTTP GETリクエストを送信します。
パラメーター
名前 | データ・タイプ | 必須またはオプション | 説明 |
---|---|---|---|
URL | 文字列 | 必須 | プラットフォームAPIのパス(例: /api/v2/users/{userId}. |
ヘッダー | 地図<String, String=""> | 任意 | HTTP ヘッダーに追加されたカスタム データ。 |
戻り値
データ・タイプ | 説明 |
---|---|
Http応答 | ネイティブのSalesforce HttpResponseを返します。 |
例
次の例は、特定のユーザーに関する情報を返します。 /api/v2/users/{userId} エンドポイント。
HttpResponse response = purecloud.SDK.Rest.get('/api/v2/users/6a50987a-f00c-4b10-b627-4a677f9f0263', new Map<String, String>{'CustomHeaderValue' => 'Foo'});
プラットフォームAPIエンドポイントにHTTP PUTリクエストを送信します。
パラメーター
名前 | データ・タイプ | 必須またはオプション | 説明 |
---|---|---|---|
URL | 文字列 | 必須 | プラットフォームAPIのパス(例: /api/v2/users/search(ユーザー/検索). |
身体 | 文字列 | 必須 | シリアル化されたJSONオブジェクト。 |
ヘッダー | 地図<String, String=""> | 任意 | HTTP ヘッダーに追加されたカスタム データ。 |
戻り値
データ・タイプ | 説明 |
---|---|
Http応答 | ネイティブのSalesforce HttpResponseを返します。 |
例
次の例では、チャット参加者の属性を次のように変更します。 / api / v2 / conversations / chats / {conversationId} / participants / {participantId} / attributes 終点。 リクエストの本文は次のようにフォーマットされます {「属性」: {「attrib1」: 「JohnDoe」、「attrib2」: 「Foo」}}。
Map<String,Object> attributes = new Map<String,Object> {
'attrib1' => 'John Doe',
'attrib2' => 'Foo'
};
Map<String,Object> body = new Map<String,Object> {
'attributes' => attributes
};
HttpResponse response = purecloud.SDK.Rest.patch('/api/v2/conversations/chats/42a09688-c7e2-4d49-b9b8-8667d321a6f7/participants/5ad38568-9b97-4db6-850b-48b750566b06/attributes', JSON.serialize(body), new Map<String, String>{'CustomHeaderValue' => 'Foo'});
プラットフォームAPIエンドポイントにHTTP POSTリクエストを送信します。
パラメーター
名前 | データ・タイプ | 必須またはオプション | 説明 |
---|---|---|---|
URL | 文字列 | 必須 | プラットフォームAPIのパス(例: /api/v2/users/search(ユーザー/検索). |
身体 | 文字列 | 必須 | シリアル化されたJSONオブジェクト。 |
ヘッダー | 地図<String, String=""> | 任意 | HTTP ヘッダーに追加されたカスタム データ。 |
戻り値
データ・タイプ | 説明 |
---|---|
Http応答 | ネイティブのSalesforce HttpResponseを返します。 |
例
次の例は、ユーザーを名前で検索し、 /api/v2/users/search(ユーザー/検索) エンドポイント。 この例では、2 つのマッピングされたオブジェクトを使用して JSON 文字列を生成します。 リクエストの本文は次のようにフォーマットされます {「クエリ」: [{ "田畑": [「名前」]、「値」: 「JohnDoe」、「type」: 「含む」}]}
Map<String,Object>query=new Map<String,Object>{
'fields'=newList<String>{'name'},
'value'=>'John Doe',
'type' =>'CONTAINS'
};
Map<String,Object>body=newMap<String,Object>{
'query' => new List<Object>{ query }
};
HttpResponse response = purecloud.SDK.Rest.post('/api/v2/users/search', JSON.serialize(body), new Map<String, String>{'CustomHeaderValue' => 'Foo'});
プラットフォームAPIエンドポイントにHTTP PUTリクエストを送信します。
パラメーター
名前 | データ・タイプ | 必須またはオプション | 説明 |
---|---|---|---|
URL | 文字列 | 必須 | プラットフォームAPIのパス(例: /api/v2/users/{userId}/callForwarding. |
身体 | 文字列 | 必須 | シリアル化されたJSONオブジェクト。 |
ヘッダー | 地図<String, String) | 任意 | HTTP ヘッダーに追加されたカスタム データ。 |
戻り値
データ・タイプ | 説明 |
---|---|
Http応答 | ネイティブのSalesforce HttpResponseを返します。 |
例
次の例は、特定のユーザの通話転送設定を更新し、 /api/v2/users/{userId}/callForwarding エンドポイント。
String body = '{ "enabled": true, "phoneNumber": "+13175550123" }';
HttpResponse response = purecloud.SDK.Rest.put('/api/v2/users/6a50987a-f00c-4b10-b627-4a677f9f0263/callForwarding', body, new Map<String, String>{'CustomHeaderValue' => 'Foo'});
プラットフォームAPIエンドポイントにHTTP DELリクエストを送信します。
パラメーター
名前 | データ・タイプ | 必須またはオプション | 説明 |
---|---|---|---|
URL | 文字列 | 必須 | プラットフォームAPIのパス(例: /api/v2/users/{userId}/station/associatedStation. |
ヘッダー | 地図<String, String=""> | 任意 | HTTP ヘッダーに追加されたカスタム データ。 |
戻り値
データ・タイプ | 説明 |
---|---|
Http応答 | ネイティブのSalesforce HttpResponseを返します。 |
例
次の例は、ステーションとユーザー間の関連付けを削除し、 /api/v2/users/{userId}/ステーション/関連ステーション エンドポイント。
HttpResponse response = purecloud.SDK.Rest.del('/api/v2/users/6a50987a-f00c-4b10-b627-4a677f9f0263/station/associatedstation', new Map<String, String>{'CustomHeaderValue' => 'Foo'});
詳細については、以下を参照してください。 Salesforce向けGenesys CloudのSDK.
統合の詳細については、以下を参照してください。Salesforce向けGenesys Cloudについて.