# 异步任务查询-开放接口

# 配置信息

例如:

  • APPID: xxxxxxxxxxxxxxx
  • TOKEN: xxxxxxxxxxxxxxx
  • EncodingAESKey: xxxxxxxxxxxxxxx

# 机器人发布进度查询接口:

https://chatbot.weixin.qq.com/openapi/bts/taskfetch/{TOKEN}

接口类型:

POST请求

参数说明:

字段 类型 是否必填 描述
openid string 管理员id(可以是创建者、管理员的id)
task_id string 任务ID

消息加解密接入指引

比如参数为

<xml>
    <openid><![CDATA[平台管理员ID]]></openid>
    <task_id><![CDATA[任务ID]]></task_id>
</xml>

将加密后的数据,以字段 encrypt 放入body中

var cryptor = new WXBizMsgCrypt(TOKEN, EncodingAESKey, APPID);

var data = `<xml>
    <openid><![CDATA[平台管理员ID]]></openid>
    <task_id><![CDATA[任务ID]]></task_id>
</xml>`

var encrypted = cryptor.encrypt(data);

curl -X post -d '{"encrypt": encrypted}' "https://chatbot.weixin.qq.com/openapi/bts/taskfetch/{TOKEN}"

返回值说明:

字段名 类型 含义
data.state int 0 准备中,1 进行中,2 成功 3 失败
data.progress int 进度,n%
data.start int64 任务开始时间戳
data.end int64 任务结束时间戳
data.url string 导出任务的下载链接
data.msg string state为3的时候有任务失败信息
data.success_skill_info array 导入bot时候成功的技能名字和ID映射表,最多存储5000条,如果大批量导入,可以使用查询接口重新查询导入的数据
data.fail_skill_info array 导入bot时候失败的技能意图名和错误信息,最多存储5000条

返回格式:

{
    "code": 0,
    "data": {
        "end": 1654847065,
        "fail_skill_info": null,
        "import_export_time": null,
        "msg": "",
        "progress": 100,
        "start": 1654847065,
        "state": 2,
        "success_skill_info": null,
        "url": ""
    },
    "msg": "success",
    "progress_bar": "",
    "request_id": "255i0ug8-l9q4-3801-44ft-w7csjn9e5142",
    "type": 2
}

# 错误码说明:

{
    errcode: 1001,
    errmsg: "TOKEN is not valid"
}
错误码 描述
1001 token无效
1002 机器人审核没有通过
1003 签名缺少userid字段
1004 签名字段为空
1005 签名过期或无效
1006 签名校验失败,缺少userid字段
1007 appid, category,label, desc 字段不能未空
1008 appid, openid,msg, 字段不能未空
1009、1011 appid 合法性校验失败
1010 appid 校验失败
1013、1019 请求数据解密失败
1015 managerid 合法性校验失败