Rest Api Action

Rest Api Action icon

同步处理 RESTful API 调用。此操作可使系统处理更高的负载。它返回 API 调用的正文和标头。这使得测试和调试脚本更为容易。

要测试包含 REST API 选项的脚本并查看响应信息,您必须运行该脚本。使用“启动即跟踪”选项运行脚本。

您还可以在 SNIPPET 操作中使用 GetRestProxy 函数进行同步 REST API 调用。此选项的负载不如 REST API 操作高。

Dependencies

此操作的使用存在限制。业务单位关闭 用于管理 CXone环境的技术支持、计费和全局设置的高级组织分组级别强制采取限制,这样不会造成相互影响。平台 中的限制条件如下:

  • 响应格式:仅支持 JSON 响应格式。
  • 失败重试:如果出现失败消息,操作处理程序将自动尝试两次在返回响应之前收到。
  • 超时:您在请求中指定超时值。该值不得超过 90 秒。
  • 最大响应大小:最大响应大小为 32 KB。这与现有的 Snippet 功能一致。
  • 节流限制:节流限制由两个参数定义:
    • 最大并发请求数:默认最多允许100个并发请求。此限制对于所有 CXone 客户都是相同的。这意味着 100 个并发请求会产生比现有 Snippet 功能更高的吞吐量。如果需要 100 个以上的并发请求,请与您的 CXone 客户代表 讨论如何增加业务单位的限值。需要特别批准。
    • 队列计数:当请求超过限制时,多余的请求进入处理队列。一旦请求数降至该限值以下,则处理排队的请求。
  • 断路器:如果您指定的 URL 已关闭或无法访问,您您的请求可能会失败太多。发生这种情况时,CXone 将在一段时间内撤回(即减少)来自 REST API 操作的所有 URL 的请求执行。这允许您指定的 URL 从失败中恢复。限制条件如下所示。
    • 撤回时间或中断持续时间:如果达到故障率,则 30 秒内不会执行来自 REST API 操作的请求。
    • 最小吞吐量:每秒 100 个请求。如果您的业务单位未执行最小请求数,则即使请求失败,也仍将继续执行您的请求。
    • 失败率:如果 30 秒内 50% 的请求失败,则接下来的 30 秒内您的请求将不会被执行。30 秒为一个滚动窗口。

Input Properties

这些属性定义操作在执行时使用的数据。

属性

说明

说明文字

输入在脚本中唯一标识此操作的短语。标题显示在脚本画布上的操作图标下方。The default is the action name.

Verb

REST 操作,例如 GET、PUT、POST、DELETE 和 PATCH。

Parameters

支持指定查询参数或发布任何数据的功能。任何类型的 JSON — 应可以接受 Jobject、Jarray 和 Jtoken。目前,操作需要在单行中提供 JSON。支持从包含 JSON 的字符串中替换变量,或使用 asjson() 函数将动态数据类型转换为 JSON。您也可以将先前 REST API 操作的输出 resultSet(out)变量传递给此属性。

Headers

支持添加自定义标题以允许对客户进行身份验证的功能(例如持有者令牌)。接受以 JSON 格式表达的键值对。此操作需要在单行中提供 JSON。支持从包含 JSON 的字符串中替换变量,或使用 asjson() 函数将动态数据类型转换为 JSON。您还可以将输出变量 resultSet(out) 从之前的 REST API 操作传递到此属性。

重要提醒 如果您的自定义 URL 端点需要不同的标题,则必须在此属性中指定。为了与现有 Snippet 操作保持功能一致,CXone 添加以下标头。

{"Accept":"application/json", "Content-Type" :"application/x-www-form-urlencoded"}

Command

仅有的选项为 MakeRestRequest,其在 Snippet action中使用时具有相同的功能。未来开发过程中可能会提供 Snippet 操作提供的其他命令。

TimeOutInMilliSeconds

允许指定和遵守 REST 呼叫超时。必须小于 90 秒(90000 毫秒)。如果未指定超时,则默认值为 10 秒(10000 毫秒)。

Service Address

允许提供一个自定义 URL,包括为 GET 指定查询参数的功能。此外还支持变量替换。

输出属性

这些属性包含保存执行操作返回的数据的变量。它们在操作完成后供引用和使用。

属性

说明

resultSet(out)

该属性包含从服务地址中指定的 API 返回的任何信息。在 Studio 跟踪窗口中,其显示为 Dynamic Object。如果需要,您还可以按原样将此 resultSet 传递到标题和参数中。

errorArgList(out)

出于兼容性考虑,错误条件有一个类似与 REST 代理的对象。支持 DynamicData 类型。

结果分支条件

结果分支条件允许您在脚本中创建分支,以在执行操作时处理不同的结果。

条件

说明

Throttle

当短时间内执行过多请求时采取的路径。有关更多详细信息,请参阅下述限制内容。

InvalidInput

当发现无效输入或出现超时错误时采取的路径。每个参数在保存脚本时进行验证。

Failure

当执行脚本时 NICE CXone 应用程序 中发生任何错误或异常的情况下采取的路径。

Error

当远程客户端点返回一个 http 错误代码时采取的路径。

Default

当 90 秒内未收到响应时采取的路径。

Success

完成操作而无错误,且 API 调用或数据返回全部成功时所采用的路径(2xx 响应代码)。

Other Options

您可以替换当前 Snippet action中完成的外部 RESTful API 请求。