API Task 按需端点

通过端点立即调用 API Tasks。 这会根据需要使用部署 API 结合按需请求动态启动并执行 API Tasks。 这种方法简化了工作流程,与传统的静态部署相比,提高了资源效率。

注: API Tasks 不支持交互式表单。

主要优势

  • 程序化部署: 使用您首选的 API 客户端从任意位置按需部署 API Task
  • 处理:
    • 只有在需要时才激活自动化,以确保资源的最佳利用。 这意味着它们不会一直部署在云端,占用资源。 相反,它们在每次请求时都会被加载和执行。
    • 在高流量期间,自动化操作会被放入队列中,并在设备可用时立即执行,确保即使在高负载下也能顺利运行。 您可以在活动页面查看自动化的进度。
    • 高级许可证有助于扩展您的自动化,并提供访问更大云资源池的权限,这些资源可以执行多个 API Task 实例,提高并发性,使您能够同时处理更多 API Task 请求。
  • 理想场景:
    • 批处理作业(例如分析销售数据、生成报告)
    • 计划任务
    • 不需要立即响应的情况
注: 要在流程中启用按需 API Task 部署,请在管理 > 设置 > 机器人坐席批量安装 > 生成新密钥中生成注册密钥,并单击保存更改

身份验证

获取与部署 API 交互所需的身份验证凭据。 这通常涉及访问令牌或 API 密钥。 以下示例按需将 API Task 部署到云设备。 您还可以在部署机器人时将变量传递给它们。

POST https://{{ControlRoomURL}}/v4/automations/deploy

Header: X-Authorization: <<authentication token>> or Authorization: Bearer <<b
earer token>>

所有 API 调用必须包含来自身份验证 API 的身份验证令牌(生成 JSON Web 令牌)或来自 OAuth 服务的持有者令牌。 您不能在 API 中同时使用这两者。

撰写按需请求

请求
{
  "botId": 121,
  "automationName": "SAMPLE_APITASK",
  "description": "My first API Task deploy using api",
  "botLabel": "string",
  "executionType": "RUN_NOW",
  "automationPriority": "PRIORITY_MEDIUM",
  "headlessRequest": {
    "numberOfExecutions": 1,
    "queueOnSlotsExhaustion": false,
    "sharedRunAsUserId": 12
  },
  "botInput": {
    "inputVar": {
      "type": "STRING",
      "string": "PassingString"
    }
  }
}
注:

可以在没有任何输入字段的情况下发出自动化部署请求。 如果您指定输入,请确保 API Task 成功接收这些映射的值,该自动化的变量必须标记为输入。 此外,变量在 API Task 中的名称必须与请求正文中映射的值相匹配。

请求参数
参数 类型 必填 描述
botId 整数 请输入要部署的自动化的 ID。 在编辑器中打开自动化时,ID 会显示在地址栏中。
automationName 字符串 输入创建自动化时使用的名称。
description 字符串 输入创建自动化时使用的描述。
botLabel 字符串 输入签入自动化时应用的标签。 您可以输入实际正式N/A
executionType 字符串 输入与机器人关联的执行类型。 您可以输入以下执行类型之一:
  • RUN_NOW
  • RUN_WITH_QUEUE
  • RUN_WITH_EVENT_TRIGGERS
automationPriority 字符串 输入自动化执行的优先级。 您可以输入以下优先级之一:
  • PRIORITY_MEDIUM
  • PRIORITY_HIGH
  • PRIORITY_LOW
默认优先级设置为 PRIORITY_MEDIUM
headlessRequest 对象。
numberOfExecutions 整数 输入针对给定的按需(无标头)请求运行的执行次数。
queueOnSlotsExhaustion 布尔值 输入 TrueFalse 以指定是否必须将部署排队。
sharedRunAsUserId 整数 输入 apitaskrunner 用户的用户 ID,为 API Tasks 建立 RunAsUser 上下文。

编辑用户页面编辑用户详情时,用户 ID 会显示在地址栏中。

有关 apitaskrunner 的详细信息,请参阅 以用户身份运行 API Task (apitaskrunner)
注: RunAsUser 不需要机器人运行程序许可证。
botInput 对象
type Any 输入输入变量的类型。

您可以输入以下变量类型之一: STRINGNUMBERBOOLEANFILEITERATORLISTDICTIONARYTABLEVARIABLECONDITIONALWINDOWTASKBOTDATETIMEUIOBJECTRECORDEXCEPTIONCREDENTIALCOORDINATEIMAGEREGIONPROPERTIESTRIGGERCONDITIONALGROUPFORMFORMELEMENTHOTKEYWORKITEM

string 字符串 输入必须用作 STRING 变量输入的字符串。
响应
{
  "deploymentId": "320a2149-aa44-41ab-af9b-f9343ae2581b",
  "automationName": "SAMPLE_APITASK"
}
响应参数
参数 类型 描述
deploymentId 字符串 在机器人部署期间生成的部署 ID。
automationName 字符串 已部署的自动化的名称。 如果在请求中未包含自动化名称,则会为已部署的自动化分配一个随机名称。
您可以在 Swagger 界面中测试此端点,该界面包含在您所有的 Control Room 实例中。
提示: 通过导航到您的 Control Room 实例,并在 URL 末尾添加 /swagger/ 来访问 Swagger。https://{{ControlRoomURL}}/swagger/

Control Room 中查看活动页面以跟踪您的按需(无标头)执行进度,从排队中 >> 正在进行 >> 已完成

API 任务活动页面

有关部署 API 的更多详细信息,请参阅 机器人部署 API (V4)