控制器公有云 API 文档 - 1.0.0

控制器公有云平台介绍

0. 说明

●client_id 为授权客户端Id。 除了“获取授权码”接口外, 对控制器的所有接口请求均需要在 Header 中添加参数项:TenantCode:{client_Id}, 详情查看各个接口说明。

●接口参数说明中: 使用大括号 {} 表示这是变量,例如 {client_id} 表示 client_id 这个变量的值, 而不是 “client_id” 字符串。

1.获取授权码

接口功能

access_token 为控制器的全局唯一接口调用凭据,SCRM 调用各接口时都需使用 access_token;access_token 的有效期目前为 24 个小时,过期后需刷新重新获取。

请求URL

https://personalcenter.unirpa.com/api/connect/token

请求方式

POST

请求头

参数名 必选 类型 说明
Content-Type true string 参数值:application/x-www-form-urlencoded

参数

参数名 必选 类型 说明
client_id true string 授权客户端Id
client_secret true string 授权客户端密钥
grant_type true string client_credentials

响应

返回字段 字段类型 说明
access_token string 授权码
expires_in int 过期时间
token_type string 授权码类型
scope string 访问范围作用域

响应示例

1
2
3
4
5
6
{
"access_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6IkJENTVCQ0RGRDdEQzQzQTZCQUNENDI2RTZFQzFFMThBRUMzQ0UzNzVSUzI1NiIsInR5cCI6ImF0K2p3dCIsIng1dCI6InZWVzgzOWZjUTZhNnpVSnVic0hoaXV3ODQzVSJ9.eyJuYmYiOjE2MzM2ODI2MDksImV4cCI6MTYzMzc2OTAwOSwiaXNzIjoiaHR0cDovL2xvY2FsaG9zdDoxMjAwMSIsImNsaWVudF9pZCI6InRhb2NsaWVudCIsImp0aSI6IjJBMjlCNzkwQUU3QTNCNjdDNTczMjE5QTQ0MDUxRjI4IiwiaWF0IjoxNjMzNjgyNjA5LCJzY29wZSI6WyJhcHBtYXJrZXRzZXJ2aWNlIiwiY29tbXVuaXR5c2VydmljZSIsIklkZW50aXR5U2VydmVyQXBpIl19.h8CYhv_q8T_tJG0cwe36JWf4ExL7CKBmx5uSb0mOKtYM0ay8nd3c9Xd0q6WM2Quvt8bLkIWJi7CDR4iA3RDH-4OVzY7je4w4cb44dRh-VmEHPZ6kO8dUZYvlXtMZMgTApOaVoIkqKJIiPRK_bQxeuu9Cv3co1AnSGR7HBsCdjqpFSwhGCLLJqE5C82UEVch5m7jS3_upwAOujLZ2ppUFl3xQnV8mGfUFzn99xE0pZTHUcKnrCuI_suv1CatknVBS7R_qf8xHxMww4NGdcpazG_8v-Jk2p7zPRw_fuYHZMAj_yoGpcge27iJQO6cWkxDOQemeBEyz3rjIo7z9F1Mjgw",
"expires_in": 86400,
"token_type": "Bearer",
"scope": "integrationapp"
}

2. 队列

2.1. 创建队列

接口功能

向租户的队列中添加队列条目。

请求URL

https://controlcenter.unirpa.com/openapi/v1/queue/createqueue

请求方式

POST

请求头

参数名 必选 类型 说明
Authorization true string Bearer {access_token}
Content-Type true string application/json
TenantCode true string {client_id}

参数

参数名 必选 类型 说明
Name true string 队列名称
Description false string 队列描述
EnabledUniqueReference true json 是否启用唯一索引检查,默认false
EnabledAutoRetry false bool 是否启动自动重试,默认为false
MaxAutoRetriedCount false integer 最大重试数
OrganizationName true string 指定数据所属管理组。需要传入完整的管理组路径,以”/“ 分割,例如:默认组/公司/研发部

响应字段

返回字段 字段类型 说明
code string 响应码
message string 响应消息

响应示例

1
2
3
4
{
"code": 200,
"message": "操作成功"
}

2.2. 添加队列条目

接口功能

向租户的队列中添加队列条目。

请求URL

https://controlcenter.unirpa.com/openapi/v1/queue/addqueueitem

请求方式

POST

请求头

参数名 必选 类型 说明
Authorization true string Bearer {access_token}
Content-Type true string application/json
TenantCode true string {client_id}

参数

参数名 必选 类型 说明
QueueName true string 队列名称
Data true json 与SCRM约定好数据结构

响应字段

返回字段 字段类型 说明
code string 响应码
message string 响应消息

响应示例

1
2
3
4
{
"code": 200,
"message": "操作成功"
}

2.3. 删除队列条目

接口功能

删除非运行中状态的队列条目。

请求URL

https://controlcenter.unirpa.com/openapi/v1/queue/deletequeueitem

请求方式

POST

请求头

参数名 必选 类型 说明
Authorization true string Bearer {access_token}
Content-Type true string application/json
TenantCode true string {client_id}

参数

参数名 必选 类型 说明
QueueName true string 队列名称
Id true string 队列条目Id

响应字段

返回字段 字段类型 说明
code string 响应码
message string 响应消息

响应示例

1
2
3
4
{
"code": 200,
"message": "操作成功"
}

3. 任务

3.1. 启动一个即时任务

接口功能

生成一条即时触发任务。

请求URL

https://controlcenter.unirpa.com/openapi/v1/task/createtask

请求方式

POST

请求头

参数名 必选 类型 说明
Authorization true string Bearer {access_token}
Content-Type true string application/json
TenantCode true string {client_id}

参数

参数名 必选 类型 说明
ProcessName true string 流程名称
ProcessVersion true string 流程版本
ExecutiveSubject true integer 执行主体 , 0 –流程关联的机器人组全体机器人 1–流程关联的机器人组下机器人 2–动态分配
DynamicCount false integer 动态执行的次数。如 ExecutiveSubjectType的值为2, 这这里必填。
UniqueNos false string[] 流程关联的机器人组下机器人唯一码集合。如 ExecutiveSubjectType的值为0, 这这里必填。
TaskPendingTimeout false integer 等待任务的超时时间,单位秒
TaskStopAutomaticallyCronExpression false string 任务自动停止Cron表达式

响应字段

返回字段 字段类型 说明
code string 响应码
message string 响应消息
data Json 返回数据,这里包含已创建的task编号,以及taskId 集合

响应示例

1
2
3
4
5
6
7
8
9
10
{
"code": 200,
"message": "操作成功",
"data": [
{
"taskNo": "T2022052600003",
"taskId": "d5b8d10d-5c7a-4e47-854e-f7036ee62945"
}
]
}

3.2. 停止任务

接口功能

对于待运行/运行中的任务,发出停止命令,执行停止操作。

请求URL

https://controlcenter.unirpa.com/openapi/v1/task/stoptasks

请求方式

POST

请求头

参数名 必选 类型 说明
Authorization true string Bearer {access_token}
Content-Type true string application/json
TenantCode true string {client_id}

参数

参数名 必选 类型 说明
TaskIds true string[] 任务Ids数组

响应字段

返回字段 字段类型 说明
code string 响应码
message string 响应消息

响应示例

1
2
3
4
{
"code": 200,
"message": "操作成功"
}

3.3. 获取任务数据

接口功能

获取任务的信息。

请求URL

https://controlcenter.unirpa.com/openapi/v1/task/gettask

请求方式

POST

请求头

参数名 必选 类型 说明
Authorization true string Bearer {access_token}
Content-Type true string application/json
TenantCode true string {client_id}

参数

参数名 必选 类型 说明
TaskId true string 任务Id
TaskNo false string 任务No

响应字段

返回字段 字段类型 说明
code string 响应码
message string 响应消息
data Json 任务信息

data字段说明

返回字段 类型 说明
id string 任务Id
taskNo string 任务No
taskStatus int 任务状态 0等待中,1运行中,2运行故障,3运行完成,4运行停止,5运行失败,6取消运行
planType int 触发方式 0即时,1定时,2队列
startTime datetime 任务开始时间
endTime datetime 任务结束时间
robotUniqueNo string 机器人唯一码
robotName string 机器人名称
robotGroupId string 机器人组Id
robotGroupName string 机器人组名称
executionPlanId string 流程排期Id
planName string 流程排期名称
processId string 流程Id
processName string 流程名称
packageId string 流程包Id
packageName string 流程包名称
processVersion string 流程包版本
executiveSubject int 执行主体 0所有,1指定机器,2动态分配
taskPendingTimeout int 等待任务的超时时间,单位秒
taskStopAutomaticallyCronExpression string 任务自动停止Cron表达式

响应示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
"code": 200,
"message": "操作成功",
"data": {
"id": "084281b7-3e25-422d-86d9-03a2e16f194a",
"taskNo": "T2022040700037",
"taskStatus": 2,
"planType": 0,
"startTime": "2022-04-07 18:33:20",
"endTime": "2022-04-07 18:34:00",
"robotUniqueNo": "hfceehafbaggdacj_c995317b78d92567",
"robotName": "robot1",
"robotGroupId": "44297eb0-e07f-47ff-9331-ad767f7e450d",
"robotGroupName": "rg",
"executionPlanId": "",
"planName": "test2",
"processId": "c6f6dcfc-b618-45fc-ba30-cecc8e64e3da",
"processName": "test2",
"packageId": "42731ded-f30b-47a1-9348-86ec147b847b",
"packageName": "参数测试新疆",
"processVersion": null,
"executiveSubject": 0,
"taskPendingTimeout": 0,
"taskStopAutomaticallyCronExpression": ""
}
}

4. 参数

4.1. 添加参数

接口功能

添加参数

请求URL

https://controlcenter.unirpa.com/openapi/v1/parameter/createparameter

请求方式

POST

请求头

参数名 必选 类型 说明
Authorization true string Bearer {access_token}
Content-Type true string application/json
TenantCode true string {client_id}

参数

参数名 必选 类型 说明
ParameterName true string 参数名称
ParameterType true integer 参数类型: 1–文本, 2–整数, 3–布尔, 4–账户, 5–字典
ParameterValue false string 如果类型为,文本/整数/布尔类型,则必填
ParameterDescription false string 参数说明
Credential false { “account”: “test”, “password”: “testvalue” } 如果类型为账户类型,则必填
Dictionary false [{ “Key”: “testKey”, “Value”: “TestValue”, “ParameterCategory”: 0 }, { “Key”: “123”, “Value”: “123”, “ParameterCategory”: 1 }] 如果类型为字典类型,则必填,ParameterCategory,为字典参数类型: 0–文本, 1–加密文本
RobotParameter false [ { “robotUniqueNo”: “dcgidbfcibccfgaa_249daa6c141cd9df”, “parameterValue”: “”, “credential”: {“account”: “”, “password”: “”}, “dictionary”: [{ “Key”: “4”, “Value”: “4”, “id”: 0, “ParameterCategory”: 0 } ] } ] 条目列表,可以针对对应的机器人进行参数覆盖,当IsGlobal为 false的时候,则条目列表必须有值
IsGlobal true bool 默认值false, 当值为true时,当开启全局参数选项时,默认每个机器人运行时都会取到该参数值,除非在条目列表(RobotParameter)中进行覆盖. 当值为false时,RobotParameter参数不能为空
OrganizationName true string 指定数据所属管理组。需要传入完整的管理组路径,以”/“ 分割,例如:默认组/公司/研发部

响应字段

返回字段 字段类型 说明
code string 响应码
message string 响应消息
data object 请求结果,返回参数Id

data 字段说明

返回字段 字段类型 说明
parameterId string 新创建的参数Id

响应示例

1
2
3
4
5
6
7
{
"code": 200,
"message": "操作成功",
"data": {
"parameterId": "13e8a345-2d6f-4aee-bdb9-7159e7812f7c"
}
}

4.2. 更新参数

接口功能

添加参数

请求URL

https://controlcenter.unirpa.com/openapi/v1/parameter/updateparameter

请求方式

POST

请求头

参数名 必选 类型 说明
Authorization true string Bearer {access_token}
Content-Type true string application/json
TenantCode true string {client_id}

参数

参数名 必选 类型 说明
ParameterName true string 参数名称
Id true string 参数Id
ParameterType true integer 参数类型: 1–文本, 2–整数, 3–布尔, 4–账户, 5–字典
ParameterValue false string 如果类型为,文本/整数/布尔类型,则必填
Credential false { “account”: “test”, “password”: “testvalue” } 如果类型为账户类型,则必填
Dictionary false [{ “Key”: “testKey”, “Value”: “TestValue”, “ParameterCategory”: 0 }, { “Key”: “123”, “Value”: “123”, “ParameterCategory”: 1 }] 如果类型为字典类型,则必填,ParameterCategory,为字典参数类型: 0–文本, 1–加密文本
RobotParameter false [ { “robotUniqueNo”: “dcgidbfcibccfgaa_249daa6c141cd9df”, “parameterValue”: “”, “credential”: { “account”: “”, “password”: “” }, “dictionary”: [ { “Key”: “4”, “Value”: “4”, “id”: 0, “ParameterCategory”: 0 } ] } ] 条目列表,可以针对对应的机器人进行参数覆盖,当IsGlobal为 false的时候,则条目列表必须有值
IsGlobal true bool 当开启全局参数选项时,默认每个机器人运行时都会取到该参数值,除非在条目列表(RobotParameter)中进行覆盖

响应字段

返回字段 字段类型 说明
code string 响应码
message string 响应消息

响应示例

1
2
3
4
{
"code": 200,
"message": "操作成功"
}

4.3. 获取参数

接口功能

根据参数名和组织名称

请求URL

https://controlcenter.unirpa.com/openapi/v1/parameter/getparameter

请求方式

GET

请求头

参数名 必选 类型 说明
Authorization true string Bearer {access_token}
Content-Type true string application/json
TenantCode true string {client_id}

参数

参数名 必选 类型 说明
parameterName true string 参数名称
organizationName true string 指定数据所属管理组。需要传入完整的管理组路径,以”/“ 分割,例如:默认组/公司/研发部

响应字段

返回字段 字段类型 说明
code string 响应码
message string 响应消息
data Json 任务信息

data字段说明

返回字段 类型 说明
id string 参数Id
parameterName string 参数名称
parameterType int 参数类型,见 ParameterType
parameterValue string 参数值,为字符串类型,其中 4,5 (账户,字典)为Json字符串形式
parameterDescription string 参数描述
isGlobal bool 是否全局使用

响应示例

1
2
3
4
5
6
7
8
9
10
11
12
{
"code": 200,
"message": "操作成功"
"data": {
"id": "13e8a345-2d6f-4aee-bdb9-7159e7812f7c",
"parameterName": "test",
"parameterType": 1 ,
"parameterValue": "xxx",
"parameterDescription": "test description",
"isGlobal": true
}
}

附录:枚举类型说明

ParameterType

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// <summary>
// 参数类型
// </summary>
public enum ParameterType
{
// <summary>
// 未指定
// </summary>
Unspecified = -1,

//<summary>
// 文本
// </summary>
Text = 1,

// <summary>
// 整数
//</summary>
Integer = 2,

//<summary>
// 布尔
// </summary>
Boolean = 3,

// <summary>
// 账户
// </summary>
Credential = 4,

// <summary>
// 字典
// </summary>
Dictionary = 5
}