使用开发工具包调用 Genesys 云平台 API

注意: 本文适用于适用于 Salesforce 的 Genesys 云。

本页描述的功能即将推出。 有关更多信息,请参阅 发行说明

您可以在托管软件包中使用我们的 SDK 在 Salesforce 中调用 Genesys 云平台 API。 该软件开发工具包使用 Salesforce Apex 编程语言。 

注意: 这篇高级自定义文章面向熟悉 Salesforce 的开发人员。

必备

  • 配置身份验证。

您可以调用任何与特定用户上下文无关且 OAuth 客户端中权限允许的平台 API。 OAuth 客户端是您为 Salesforce 中的身份验证设置创建的 OAuth 客户端。 有关详细信息,请参阅 身份验证

通过 Purecloud.sdk.rest 命名空间下的 Rest 类访问我们的开发工具包。 有关通过 Rest 类访问我们的 SDK 的示例,请参阅适用于 Salesforce 的 Genesys 云 SDK 示例 (GitHub)。

休息课

包含通过适用于 Salesforce 的 Genesys 云在 Genesys 云平台 API 上运行的方法。 

名称空间

Purecloud.sdk.rest

使用

使用这些方法通过适用于 Salesforce 的 Genesys Cloud 通过平台 API 获取、修补、POST、PUT 或删除数据。

休息方法

以下方法可用于 REST 类。

向平台 API 终端节点发送 HTTP GET 请求。

参数

姓名 数据类型 必填或可选 描述
url 字符串 必需 平台 API 的路径,例如 /api/v2/users/ {userId}
标头 地图<String, String=""> 可选 自定义数据已添加到 HTTP 标头。 

返回值

数据类型 描述
获取响应 返回原生 Salesforce httpresResponse。

示例

以下示例返回有关特定用户的信息,并发送带有 /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 PATCH 请求。

参数

姓名 数据类型 必填或可选 描述
url 字符串 必需 平台 API 的路径,例如 /api/v2/ 用户/搜索
正文 字符串 必需 序列化的 JSON 对象。
标头 地图<String, String=""> 可选 自定义数据已添加到 HTTP 标头。 

返回值

数据类型 描述
获取响应 返回原生 Salesforce httpresResponse。

示例

以下示例修改具有 /api/v2/对话/chats/ {ConversationId} /参与者/ {参加者/属性 端点的聊天参与者的属性。 请求正文的格式为 {“attributes”: {“attribute 1”: “约翰·多伊”,“attribute 2”: “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/ 用户/搜索
正文 字符串 必需 序列化的 JSON 对象。
标头 地图<String, String=""> 可选 自定义数据已添加到 HTTP 标头。 

返回值

数据类型 描述
获取响应 返回原生 Salesforce httpresResponse。

示例

以下示例按名称搜索用户,然后使用 /api/v2/users/search 端点发送自定义标头。 该示例使用两个映射的对象来生成 JSON 字符串。 请求正文的格式为 {“query”: [{“字段”: [“名称”]、“值”: “John Doe”,“类型”: “包含”}]}

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}/呼叫转移
正文 字符串 必需 序列化的 JSON 对象。
标头 地图<String, String) 可选 自定义数据已添加到 HTTP 标头。 

返回值

数据类型 描述
获取响应 返回原生 Salesforce httpresResponse。

示例

以下示例更新特定用户的呼叫转移设置,并发送带有 /api/v2/users/ {userID} /呼叫转接 端点的自定义标题。 

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/ 用户/{userID} /站点/关联站
标头 地图<String, String=""> 可选 自定义数据已添加到 HTTP 标头。 

返回值

数据类型 描述
获取响应 返回原生 Salesforce httpresResponse。

示例

以下示例删除工作站和用户之间的关联,并发送带有 /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 云中的开发工具包

有关集成的更多信息,请参阅 关于适用于 Salesforce 的 Genesys Cloud