# 钉钉工作日志查询 查询钉钉工作日志(周报/日报等)。 ## 接口信息 - **接口地址**: `POST https://oapi.dingtalk.com/topapi/report/list` - **认证方式**: access_token(基于企业内部应用) - **时间单位**: ⚠️ **毫秒**(不是秒!) ## 前置条件 1. 获取 access_token: ```bash curl -s -X POST 'https://api.dingtalk.com/v1.0/oauth2/accessToken' \ -H 'Content-Type: application/json' \ -d '{ "appKey": "dingklemniq8uqk5qbgx", "appSecret": "_8EHgyhvHRHRMx6fZbh9LNpQoxyYl3At0b-fXXlQiahwupbt9oY5P6Grj8IM9Dx8" }' ``` 2. 凭证存储在 `TOOLS.md`: - AgentId: 4404185308 - Client ID (AppKey): dingklemniq8uqk5qbgx - Client Secret (AppSecret): _8EHgyhvHRHRMx6fZbh9LNpQoxyYl3At0b-fXXlQiahwupbt9oY5P6Grj8IM9Dx8 ## 调用示例 ```bash # 查询指定用户的日志(时间单位:毫秒) curl -s 'https://oapi.dingtalk.com/topapi/report/list?access_token={TOKEN}' \ -H 'Content-Type: application/json' \ -d '{ "userid": "121922510028034588", "offset": 0, "size": 10, "start_time": 1738329600000, "end_time": 1743292800000, "cursor": 0 }' ``` ## 参数说明 | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | userid | string | ✅ | 用户的钉钉 userid | | start_time | number | ✅ | 开始时间,**毫秒**时间戳 | | end_time | number | ✅ | 结束时间,**毫秒**时间戳 | | cursor | number | ✅ | 分页游标(首次查询传 0) | | size | number | ✅ | 每页数量(建议 10) | | offset | number | ❌ | 偏移量(兼容旧版,可不传) | ## 返回字段说明 日志内容在 `result.data_list` 数组中,每个元素的 `contents` 数组包含各字段: | contents.key | 说明 | |-------------|------| | 本周完成工作 / 本日完成工作 | 完成事项 | | 本周工作总结 / 本日工作总结 | 详细总结 | | 下周工作计划 / 下日工作计划 | 后续计划 | | 需协调与帮助 | 协调事项 | | 图片 | 图片列表 | | 附件 | 附件列表 | 其他字段: - `report_id`: 日志ID - `template_name`: 日志模板名称(如"经理人周报") - `creator_name`: 创建人姓名 - `dept_name`: 部门名称 - `create_time`: 创建时间(毫秒) ## 分页查询 通过 `cursor` 分页: 1. 首次查询 `cursor: 0` 2. 返回 `next_cursor` 作为下次查询的游标 3. `has_more: false` 表示最后一页 ## 注意事项 1. ⚠️ **时间单位必须是毫秒**:如 `1743292800000`(不能用 `1743292800`) 2. ⚠️ **字段名是 `userid`(全小写)**,不是 `userId` 3. ⚠️ **API 截断限制**:日志内容单字段最多返回约 1000 字符,超长部分会被截断,无法通过此接口获取完整内容