控制器公有云平台介绍
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
|
public enum ParameterType { Unspecified = -1, Text = 1, Integer = 2, Boolean = 3, Credential = 4, Dictionary = 5 }
|