跳转到主要内容
调用本接口,获取工作通知消息的发送进度,适用于企业需监控消息推送状态、排查消息发送异常等场景。

接口调用说明

调用本接口,只能获取7天内工作通知消息的发送进度。

请求

基本信息
HTTP URLhttps://oapi.dingtalk.io/topapi/message/corpconversation/getsendprogress
HTTP MethodPOST
支持的应用类型appType-企业内部应用appType-第三方企业应用
权限要求permission-qyapi_base-调用企业API时需要具备的基本权限

查询参数

名称类型是否必填示例值描述
access_tokenStringbE74xxxx调用该API的应用凭证。 - 企业内部应用,通过获取企业内部应用的access_token接口获取。 - 第三方企业应用,通过获取第三方企业的access_token接口获取。

请求体

名称类型是否必填示例值描述
agent_idNumber836390886发送消息时使用的微应用的AgentID。 - 企业内部应用,可在开发者后台的应用详情页面查看。image - 第三方企业应用可调用获取企业授权信息接口获取。
task_idNumber256271667526发送消息时钉钉返回的任务ID,调用发送工作通知接口获取task_id参数值。 说明 仅支持查询24小时内的任务。

请求示例

curl -X POST "https://oapi.dingtalk.io/topapi/message/corpconversation/getsendprogress" \
-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \
-d 'access_token=a0a25xxxxed3ff' \
-d 'agent_id=123' \
-d 'task_id=456'
Java
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.io/topapi/message/corpconversation/getsendprogress");
OapiMessageCorpconversationGetsendprogressRequest req = new OapiMessageCorpconversationGetsendprogressRequest();
req.setAgentId(123L);
req.setTaskId(456L);
OapiMessageCorpconversationGetsendprogressResponse rsp = client.execute(req, accessToken);
System.out.println(rsp.getBody());
Python
import dingtalk.api

req=dingtalk.api.OapiMessageCorpconversationGetsendprogressRequest("https://oapi.dingtalk.io/topapi/message/corpconversation/getsendprogress")

req.agent_id=123
req.task_id=456
try:
  resp= req.getResponse(access_token)
  print(resp)
except Exception,e:
  print(e)
PHP
include "TopSdk.php";
date_default_timezone_set('Asia/Shanghai');

$c = new DingTalkClient(DingTalkConstant::$CALL_TYPE_OAPI, DingTalkConstant::$METHOD_POST , DingTalkConstant::$FORMAT_JSON);
$req = new OapiMessageCorpconversationGetsendprogressRequest;
$req->setAgentId("123");
$req->setTaskId("456");
$resp = $c->execute($req, $access_token, "https://oapi.dingtalk.io/topapi/message/corpconversation/getsendprogress");
C#
IDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.io/topapi/message/corpconversation/getsendprogress");
OapiMessageCorpconversationGetsendprogressRequest req = new OapiMessageCorpconversationGetsendprogressRequest();
req.AgentId = 123L;
req.TaskId = 456L;
OapiMessageCorpconversationGetsendprogressResponse rsp = client.Execute(req, access_token);
Console.WriteLine(rsp.Body);

响应

响应体

名称类型示例值描述
request_idString5y2znla8tw3d请求ID。
errcodeNumber0返回码。
errmsgStringok返回码描述。
progressAsyncSendProgress返回结果。
progress_in_percentNumber100取值0~100,表示处理的百分比。
statusNumber2任务执行状态: - 0:未开始 - 1:处理中 - 2:处理完毕

响应体示例

{
  "errcode": 0,
  "errmsg":"ok",
  "progress": {
    "progress_in_percent": 100,
    "status": 2
  },
  "request_id": "5y2znla8tw3d"
}

错误码

若调用该接口报错,可根据错误信息在全局错误码文档中查找解决方案。
错误码(errorcode)错误信息描述(errmsg)解决方案
40035不合法的参数确认task_id或者agent_id是否正确
500系统异常出现未知的系统异常