SDKを使用してGenesys Cloud Platform APIを呼び出す

注意:この記事は、Salesforce向けGenesys Cloudに適用されます。

管理パッケージで弊社のSDKを使用して、SalesforceでGenesys Cloud Platform APIを呼び出すことができます。SDKはSalesforce Apexプログラミング言語を使用しています。

注意:この記事は、Salesforceに精通している開発者を対象とした高度なカスタマイズのトピックです。

前提条件

  • 認証 構成されています。

特定のユーザー コンテキストに関連付けられておらず、OAuth クライアントの権限で許可されている任意の Platform API を呼び出すことができます。OAuthクライアントは、Salesforceの認証設定用に作成したOAuthクライアントです。詳細については、以下を参照してください。 認証.

当社のSDKにアクセスするには、 purecloud.SDK.Rest 名前空間。休息クラスから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、または削除するには、これらの方法を使用します。

注意現在、Salesforce Apex APIを使用してPATCHメソッドをサポートすることはできません。

残りの方法

以下のメソッドは、Restクラスで使用できます。

プラットフォームAPIエンドポイントにHTTP GETリクエストを送信します。

パラメーター

データ・タイプ 必須またはオプション 説明
URL 文字列 必須 プラットフォームAPIのパス(例: /api/v2/users/{userId}.
ヘッダー 地図<String, String> オプショナル HTTP ヘッダーに追加されたカスタム データ。

戻り値

データ・タイプ 説明
HttpResponse ネイティブの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 POSTリクエストを送信します。

パラメーター

データ・タイプ 必須またはオプション 説明
URL 文字列 必須 プラットフォームAPIのパス(例: /api/v2/users/search(ユーザー/検索).
Körper 文字列 必須 Serialisiertes JSON-Objekt.
ヘッダー 地図<String, String> オプショナル HTTP ヘッダーに追加されたカスタム データ。

戻り値

データ・タイプ 説明
HttpResponse ネイティブのSalesforce HttpResponseを返します。

次の例は、ユーザーを名前で検索し、 /api/v2/users/search(ユーザー/検索) エンドポイント。この例では、2 つのマッピングされたオブジェクトを使用して JSON 文字列を生成します。リクエスト本文の形式は次のとおりです。 { “query”: [{ “fields”: [“name”], “value”: “John Doe”, “type”: “CONTAINS” }] }

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), 'CustomHeaderValue' => 'Foo');

プラットフォームAPIエンドポイントにHTTP PUTリクエストを送信します。

パラメーター

データ・タイプ 必須またはオプション 説明
URL 文字列 必須 たとえば、プラットフォームAPIのパス /api/v2/users/{userId}/callForwarding
Körper 文字列 必須 Serialisiertes JSON-Objekt.
ヘッダー マップ< 文字列、文字列) オプショナル HTTP ヘッダーに追加されたカスタム データ。

戻り値

データ・タイプ 説明
HttpResponse ネイティブの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 ヘッダーに追加されたカスタム データ。

戻り値

データ・タイプ 説明
HttpResponse ネイティブのSalesforce HttpResponseを返します。

次の例は、ステーションとユーザー間の関連付けを削除し、 /api/v2/users/{userId}/ステーション/関連ステーション エンドポイント。

HttpResponse response = purecloud.SDK.Rest.del('/api/v2/users/6a50987a-f00c-4b10-b627-4a677f9f0263/station/associatedstation', 'CustomHeaderValue' => 'Foo');

詳細については、以下を参照してください。 Salesforce向けGenesys CloudのSDK.

統合の詳細については、以下を参照してください。Salesforce向けGenesys Cloudについて.