自用API-提交计划并创建任务

2022-10-06 1673

提交计划并创建任务

简要描述
  • 通过输入计划参数,指定要运行的RPA、店铺、站点、任务运行周期等,创建对应的任务计划,计划提交后由系统自动创建对应的任务并执行。
请求URL
  • /rpa/company/plans
请求方式
  • POST
支持格式
  • JSON

请求参数

Headers
参数名 参数描述 必选 类型 说明
Authorization 身份令牌 string AppToken
Body
参数名 参数描述 必选 类型 说明
name 计划名称 string(128) -
platformId 平台id string(1) 入亚马逊平台的Id为0,【平台站点对照关系】
actionType 执行类型 string(30) 立即执行:AT_ONCE
指定时间执行:ASSIGN_TIME
按小时执行:REPEAT_BY_HOUR
按天执行:REPEAT_BY_DAY
按周执行:REPEAT_BY_WEEK
按月执行:REPEAT_BY_MONTH
assignTime 指定运行时间 date actionType为 ASSIGN_TIME:必填,指定的运行时间要和当前时间有一定的时间间隔,建议至少间隔3分钟,否则可能导致计划创建成功,但指定的执行时间已经过期,任务无法运行
repeatFrom 循环开始时间 number actionType为REPEAT_BY_HOUR:选填
值为毫秒时间戳
不填时默认为从当前时间5分钟后开始循环
repeatRange 按周期范围 string(30) actionType为
REPEAT_BY_HOUR:必填
REPEAT_BY_WEEK:必填
REPEAT_BY_MONTH:必填
按小时执行:REPEAT_BY_HOUR
如:26 指每间隔26小时目前仅支持间隔26或48小时
按月执行:REPEAT_BY_MONTH
如:30 指每月30号取值范围1到31
repeatTimeAt 按周期执行的时间点 string(5) actionType为
REPEAT_BY_DAY:必填
REPEAT_BY_WEEK:必填
REPEAT_BY_MONTH:必填
格式 HH:mm 如:15:00 指对应日期的15点执行
scriptList RPA列表 object[] -
scriptId RPA_ID string(32) 单个RPA的Id,在RPA市场中,点击查看RPA详情,可以看到RPA_ID字段【如何获取RPA ID
-runWith 参数列表 object[] 不同RPA可选的参数列表不一样,可通过获取RPA详情接口进行查看,对应接口返回中的runWith结果 【如何填写RPA运行
--name 参数名称 string(50) 通过RPA详情查询接口,获取对应RPA的runWith参数,该字段用于指名参数名称,如:datarange,统计汇总类RPA会去各个电商平台自动下载对应报表,该字段指名了要汇总报表的时间范围。)
--value 参数值 string(Max) 通过RPA详情查询接口,获取对应RPA的runWith参数,该字段用于指明参数名称对应的取值,如:lastweekSunday,上周末至今
storeScopeType 店铺范围 string(30) ALL全部、ASSIGNED指定
storeAndMarketPlaceList 店铺和站点 object[] storeScopeType值为ASSIGNED时必须指明要运行的店铺和站点
-sellerIds 卖家标识 string(Max) 多个id用逗号间隔,指定是电商平台提供的卖家Id
-marketPlace 站点 string(1024) 多个用逗号间隔,如:US、CA,【平台站点对照关系】
validFrom 计划有效期从 date 时间戳(毫秒),计划有效期对周期性任务有效,如每天一点运行的任务,有效期为2022年1月1号到2022年1月31号,永久有效的计划,不需要填写有效期,不会自动停止,需要调用停用计划接口来停用
validTo 计划有效期至 date 时间戳(毫秒),计划有效期对周期性任务有效,如每天一点运行的任务,有效期为2022年1月1号到2022年1月31号)
提交数据样例
  {
    "name": "任务名称repeat",
    "platformId": "0",
    "actionType": "REPEAT_BY_WEEK",
    "repeatRange": "2,3",
    "repeatTimeAt":"00:01",
    "validFrom": null,
    "validTo": null,
    "scriptList": [
        {
            "scriptId": "1002",
            "runWith": [
                {
                    "name": "downloadTimeType",
                    "value": "last60"
                }
            ]
        }
    ],
    "storeScopeType": "ASSIGNED",
    "storeAndMarketPlaceList": [
        {
            "sellerIds": "16310663243655",
            "marketPlace": "US,ES"
        }
    ]
}

返回数据

参数名 参数描述 必选 类型 说明
code 状态码 number -
msg 提示信息 string(1024) -
data 业务数据 object -
planId 任务id string(32) 用于唯一标识该任务
返回数据样例
  {
	"code": 0,
	"msg": "SUCCESS",
	"data": {	
		"planId":"0001"
	}
}

回调消息

任务运行时,以店铺站点为最小单位,每运行完一个店铺下的一个站点,就会发送回调数据,单条回调数据中,如果输出多个文件,则results参数为多个结果,每个结果中包含一个可下载的文件。
需要注意的是,同一个店铺站点的数据,如果首次运行失败了,会将失败的数据同过回调发送,发送系统有可能会自动重试该运行结果,重试的结果也会通过回调发送,所以同一个店铺站点的数据,需要以店铺+站点+RPA作为唯一标识,以最后一次运行结果为最终结果,需要通过API,主动触发结果重试时,建议等到整个任务运行结束后,再发起重试。

1. 通过生态中心转发返回数据格式:
参数名 参数描述 必选 类型 说明
appKey 状态码 string 应用Id
messageType 消息类型 string 300
companyId 公司ID string 暂时无实际值,恒为 0
extra 业务数据 string 目前业务数据是字符串形式的JSON,解析时需要注意转义字符业务数据的格式参考下面2业务数据格式
返回数据样例
{
        "appKey": "100",
	"messageType": "0001",
	"companyId":"0001",
	"extra":"ABCD",
}
2. 业务数据格式:回调分两种模式,批量回调和非批量回调
参数名 参数描述 必选 类型 说明
code 状态码 number -
msg 提示信息 string(1024) -
type 消息类型 string(10) 3001 RPA报表上报
data 业务数据 string(Max) 目前业务数据是字符串形式的JSON,解析时需要注意转义字符业务数据的格式参考下面业务数据格式
-planId 计划id string(32) 用于唯一标识该任务
-reuslts 任务执行结果 array 数组
--planId 计划id string(32) 和外层planId一致
--taskRecordId 结果记录id string(32) 任务运行结果Id,唯一标识一条运行结果
--taskId 任务id string(32) 任务id
--sellerId 卖家标识 string(50) 该任务结果所属店铺的卖家标识
--storeName 紫鸟店铺名称 string(128)
--siteName 站点名称 string(50) 如:美国
--siteCode 站点代码 string(50) 如: US
--rpaId 机器人Id string(32) 该任务结果执行的机器人ID ,同一个计划中可包含多个RPA,但不能存在相同RPA
--taskStartTime 任务开始时间 String(13) 毫秒时间戳,如,创建一个每天1点运行的计划,则每天的一点会生成一个task,其开始运行为当天的1点
--taskEndTime 任务结束时间 String(13) 毫秒时间戳,指的是,任务下所有店铺和对应站点的数据全部抓取或者要执行的动做全部执行完毕的时间
--taskResultType 任务结果类型 String(50) NOT_UPLOAD:未上传文件
UPLOAD_SUCCESS:上传成功
UPLOAD_FAIL:上传失败
REPORT_NOT_EXISTS:报表不存在
TASK_ERROR:报表异常
CREAT_REPORT_ERROR:报表生成错误
REDOSING:重新获取中
NOT_ENOUGH_BALANCE:余额不足
--errorCode 错误码 String(10)
--errorMsg 错误消息 String(1024)
--downloadUrl 下载地址 String(2048) 任务执行结果为文件时,有对应时会有下载地址,下载地址三天有效
--reportFromDate 报表抓取开始时间 String(13) 毫秒时间戳,如下载最近7天的日期范围报告,则该时间表示,7天范围中的第一天
--reportEndData 报表抓取结束时间 String(13) 毫秒时间戳,如下载最近7天的日期范围报告,则该时间表示,7天范围中的第最后一天
--platform 平台代码 String(1)
非批量回调返回数据样例
{
    "code": 0,
    "data": {
        "planId": "100",
        "results": [
            {
                "downloadUrl": "",
                "errorCode": "10002",
                "errorMsg": "错误信息",
                "planId": "100",
                "platform": "0",
                "rpaId": "0001",
                "sellerId": "ABCD",
                "siteCode": "US",
                "siteName": "美国",
                "storeName": "测试店铺",
                "taskEndTime": "1641295485000",
                "taskId": "0001",
                "taskRecordId": "0001",
                "taskRecordType": "SUCCESS",
                "taskStartTime": "1641295485000",
                "url": ""
            }
        ]
    },
    "msg": "RPA报表上报",
    "type": "3001"
}
批量回调返回数据样例
[
    {
        "code": 0,
        "data": {
            "planId": "100",
            "results": [
                {
                    "downloadUrl": "",
                    "errorCode": "10002",
                    "errorMsg": "错误信息",
                    "planId": "100",
                    "platform": "0",
                    "rpaId": "0001",
                    "sellerId": "ABCD",
                    "siteCode": "US",
                    "siteName": "美国",
                    "storeName": "测试店铺",
                    "taskEndTime": "1641295485000",
                    "taskId": "0001",
                    "taskRecordId": "0001",
                    "taskResultType": "SUCCESS",
                    "taskStartTime": "1641295485000",
                    "url": ""
                }
            ]
        },
        "msg": "RPA报表上报",
        "type": "3001"
    }
]

请求参数scriptList的特殊说明

(1)创建计划时,如何获取scriptId参数
打开RPA市场,找到要运行的RPA,点击该RPA打开详情页面,可以看到
RPA_ID字段,该字段的值对应scriptId的值,如下图:

获取scriptId参数

(2)创建计划时,如何填写runWith参数
可以在获取RPA参数后,调用详情查看接口来获取RPA执行所需要的参数,该参数根据RPA不同,需要的参数也不同。对应规则如下图:

RPA运行参数填写