Token导航 LogoToken导航

Agent Skill · 研究检索

dingtalk-api(dingtalk API 搜索)

用于辅助 API 设计、接口文档、请求响应结构和服务集成说明。它适合让 Agent 梳理 endpoint、生成 OpenAPI 草稿、检查字段命名、整理错误码或辅助前后端联调。使用时需要确认真实业务语义、鉴权方式、分页和错误处理规则;涉及生成接口文档时,应避免凭空补字段,最好从现有代码、schema 或接口样例中提取事实。

dingtalk-api 是研究检索类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为需要联网;许可证为 MIT-0,第三方扫描有提醒项,按安装量在研究检索类的 73,675 个 Skill 里排第 1,163。

总安装 114,825周安装 4,882GitHub Stars 8下载 40,228核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.4.0

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:dingtalk-api(dingtalk API 搜索)
来源仓库:https://github.com/ogenes/dingtalk-api
安装命令:
openclaw skills install dingtalk-api
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install dingtalk-api

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

调用钉钉开放平台 API 实现用户与部门管理。支持单聊/群聊消息发送与机器人配置查询。适用于企业内部系统集成与通知推送场景。dingtalk-api 属于研究检索类 Skill,可作为该场景下的辅助能力补充。需申请企业应用并配置正确的回调地址与密钥。注意消息撤回、已读回执等高级功能的兼容性。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install dingtalk-api;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

dingtalk-api 怎么安装?

在终端执行 openclaw skills install dingtalk-api。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

dingtalk-api 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

dingtalk-api 需要什么权限?

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

dingtalk-api 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

dingtalk-api 用的人多吗?

公开数据是累计安装 114,825 次,近一周安装 4,882 次,下载 40,228 次,GitHub 8 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

dingtalk-api 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。

先想清楚的地方

  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
dingtalk-api

dingtalk API 搜索 · 本页

114,8258需要联网MIT-0有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
dingtalk-api
description
调用钉钉开放平台API,支持用户搜索/详情/查询、部门管理(搜索/详情/子部门/用户列表/父部门)、机器人单聊消息发送、群聊消息发送、群内机器人列表查询、离职记录查询。Use when needing to search DingTalk users or departments, get user/department details, send robot messages, list group bots, or query resigned employees.

DingTalk API Skill

用于调用钉钉开放平台 API 的技能,支持用户搜索/详情/查询、部门管理(搜索/详情/子部门/用户列表/父部门)、机器人消息发送、群内机器人查询、离职记录查询、OA审批管理(查询/发起/审批/转交/评论)等功能。

前置要求

  • 已设置环境变量 DINGTALK_APP_KEY 和 DINGTALK_APP_SECRET
  • 钉钉应用已创建并拥有相应 API 权限

环境变量配置

export DINGTALK_APP_KEY="<your-app-key>"
export DINGTALK_APP_SECRET="<your-app-secret>"

功能列表

1. 搜索用户 (search-user)

根据姓名搜索用户,返回匹配的 UserId 列表。

npx ts-node scripts/search-user.ts "<搜索关键词>"

输出:

{
  "success": true,
  "keyword": "张三",
  "totalCount": 3,
  "hasMore": false,
  "userIds": ["123456789", "987654321"]
}

2. 搜索部门 (search-department)

根据名称搜索部门,返回匹配的部门 ID 列表。

npx ts-node scripts/search-department.ts "<搜索关键词>" [--debug]

输出:

{
  "success": true,
  "keyword": "技术部",
  "totalCount": 2,
  "hasMore": false,
  "departmentIds": [12345, 67890]
}

3. 获取部门详情 (get-department)

获取指定部门的详细信息。

npx ts-node scripts/get-department.ts <deptId> [--debug]

输出:

{
  "success": true,
  "department": {
    "deptId": 12345,
    "name": "技术部",
    "parentId": 1
  }
}

4. 获取子部门列表 (list-sub-departments)

获取指定部门下的子部门 ID 列表。根部门 deptId 为 1。

npx ts-node scripts/list-sub-departments.ts <deptId> [--debug]

输出:

{
  "success": true,
  "deptId": 1,
  "subDepartmentIds": [12345, 67890, 11111]
}

5. 获取部门用户列表 (list-department-users)

获取指定部门下的用户列表(userId + 姓名),自动分页获取全部用户。

npx ts-node scripts/list-department-users.ts <deptId> [--debug]

输出:

{
  "success": true,
  "deptId": 12345,
  "users": [
    { "userId": "user001", "name": "张三" },
    { "userId": "user002", "name": "李四" }
  ]
}

6. 发送单聊消息 (send-user-message)

通过机器人向指定用户发送单聊消息。

npx ts-node scripts/send-user-message.ts "<userId>" "<robotCode>" "<消息内容>" [--debug]

输出:

{
  "success": true,
  "userId": "123456",
  "robotCode": "robot_code",
  "processQueryKey": "query_key",
  "flowControlledStaffIdList": [],
  "invalidStaffIdList": [],
  "message": "消息内容"
}

7. 发送群聊消息 (send-group-message)

通过机器人向指定群会话发送消息。

npx ts-node scripts/send-group-message.ts "<openConversationId>" "<robotCode>" "<消息内容>" [--debug]

输出:

{
  "success": true,
  "openConversationId": "cid",
  "robotCode": "robot_code",
  "processQueryKey": "query_key",
  "message": "消息内容"
}

8. 获取群内机器人列表 (get-bot-list)

查询群内已配置的机器人列表。

npx ts-node scripts/get-bot-list.ts "<openConversationId>" [--debug]

输出:

{
  "success": true,
  "openConversationId": "cid",
  "botList": [
    {
      "robotCode": "code",
      "robotName": "name",
      "robotAvatar": "url",
      "openRobotType": 1
    }
  ]
}

9. 查询用户详情 (get-user)

获取指定用户的详细信息,包括姓名、手机号、邮箱、部门列表等。

npx ts-node scripts/get-user.ts "<userId>" [--debug]

输出:

{
  "success": true,
  "user": {
    "userid": "user001",
    "name": "张三",
    "mobile": "138****1234",
    "email": "zhangsan@example.com",
    "dept_id_list": [12345, 67890]
  }
}

10. 获取用户父部门列表 (list-user-parent-departments)

获取指定用户所属的所有父部门列表,从直接部门到根部门。

npx ts-node scripts/list-user-parent-departments.ts "<userId>" [--debug]

输出:

{
  "success": true,
  "userId": "user001",
  "parentIdList": [12345, 67890, 1]
}

11. 获取部门父部门列表 (list-department-parents)

获取指定部门的所有父部门列表,第一个是自身,最后一个是根部门。

npx ts-node scripts/list-department-parents.ts <deptId> [--debug]

输出:

{
  "success": true,
  "deptId": 12345,
  "parentIdList": [12345, 67890, 1]
}

12. 获取部门用户ID列表 (list-department-user-ids)

获取指定部门下所有用户的 userid 列表。

npx ts-node scripts/list-department-user-ids.ts <deptId> [--debug]

输出:

{
  "success": true,
  "deptId": 12345,
  "userIds": ["user001", "user002", "user003"]
}

13. 获取部门用户详情分页版 (list-department-user-details)

分页获取部门用户详细信息,支持自定义 cursor 和 size。

npx ts-node scripts/list-department-user-details.ts <deptId> [--cursor <cursor>] [--size <size>] [--debug]

输出:

{
  "success": true,
  "deptId": 12345,
  "users": [
    { "userid": "user001", "name": "张三" },
    { "userid": "user002", "name": "李四" }
  ],
  "hasMore": true,
  "nextCursor": 100
}

14. 获取员工人数 (get-user-count)

获取企业员工总数,可选择是否仅统计已激活员工。

npx ts-node scripts/get-user-count.ts [--onlyActive] [--debug]

输出:

{
  "success": true,
  "onlyActive": false,
  "count": 150
}

15. 根据手机号查询用户 (get-user-by-mobile)

根据手机号查询用户 userid。仅企业内部应用可用,只能查询在职员工。

npx ts-node scripts/get-user-by-mobile.ts "<mobile>" [--debug]

输出:

{
  "success": true,
  "mobile": "13800138000",
  "userId": "user001"
}

16. 根据 unionid 查询用户 (get-user-by-unionid)

根据 unionid 获取用户 userid。

npx ts-node scripts/get-user-by-unionid.ts "<unionid>" [--debug]

输出:

{
  "success": true,
  "unionid": "xxxxx",
  "userId": "user001"
}

17. 获取未登录用户列表 (list-inactive-users)

获取指定日期未登录钉钉的员工列表。只能查询一个月内数据,每天9点后调用才能确保获取前一天数据。

npx ts-node scripts/list-inactive-users.ts "<queryDate>" [--deptIds "id1,id2"] [--offset <offset>] [--size <size>] [--debug]

输出:

{
  "success": true,
  "queryDate": "20240115",
  "userIds": ["user001", "user002"],
  "hasMore": false
}

18. 查询离职记录列表 (list-resigned-users)

查询指定时间范围内的离职员工记录。仅企业内部应用可用。

npx ts-node scripts/list-resigned-users.ts "<startTime>" ["<endTime>"] [--nextToken <token>] [--maxResults <max>] [--debug]

输出:

{
  "success": true,
  "startTime": "2024-01-01T00:00:00+08:00",
  "endTime": "2024-02-01T00:00:00+08:00",
  "records": [
    {
      "userId": "user001",
      "name": "张三",
      "leaveTime": "2024-01-15T10:00:00Z",
      "leaveReason": "个人原因"
    }
  ]
}

19. 获取审批实例 ID 列表 (list-approval-instance-ids)

获取指定审批模板在时间段内的审批实例 ID 列表。

npx ts-node scripts/list-approval-instance-ids.ts <processCode> --startTime <timestamp> --endTime <timestamp> [--size <size>] [--nextToken <token>] [--debug]

输出:

{
  "success": true,
  "processCode": "PROC-XXX",
  "instanceIds": ["xxx-123", "xxx-456"],
  "totalCount": 2,
  "hasMore": false,
  "nextToken": null
}

20. 获取审批实例详情 (get-approval-instance)

获取单个审批实例的详细信息,包括表单数据、审批记录、任务列表等。

npx ts-node scripts/get-approval-instance.ts <instanceId> [--debug]

输出:

{
  "success": true,
  "instanceId": "xxx-123",
  "instance": {
    "processInstanceId": "xxx-123",
    "title": "请假申请",
    "createTimeGMT": "2024-01-01T00:00:00Z",
    "finishTimeGMT": "2024-01-01T12:00:00Z",
    "originatorUserId": "user001",
    "originatorDeptId": "1",
    "status": "COMPLETED",
    "processCode": "PROC-XXX",
    "formComponentValues": [...],
    "operationRecords": [...],
    "tasks": [...]
  }
}

21. 获取用户发起审批列表 (list-user-initiated-approvals)

获取用户发起的审批实例列表。

npx ts-node scripts/list-user-initiated-approvals.ts <userId> [--startTime <timestamp>] [--endTime <timestamp>] [--maxResults <max>] [--nextToken <token>] [--debug]

输出:

{
  "success": true,
  "userId": "user001",
  "instances": [...],
  "totalCount": 5,
  "hasMore": false,
  "nextToken": null
}

22. 获取抄送用户审批列表 (list-user-cc-approvals)

获取抄送给用户的审批实例列表。

npx ts-node scripts/list-user-cc-approvals.ts <userId> [--startTime <timestamp>] [--endTime <timestamp>] [--maxResults <max>] [--nextToken <token>] [--debug]

23. 获取待处理审批列表 (list-user-todo-approvals)

获取用户待处理的审批任务列表。

npx ts-node scripts/list-user-todo-approvals.ts <userId> [--maxResults <max>] [--nextToken <token>] [--debug]

输出:

{
  "success": true,
  "userId": "user001",
  "instances": [...],
  "totalCount": 3,
  "hasMore": false,
  "nextToken": null
}

24. 获取已处理审批列表 (list-user-done-approvals)

获取用户已处理的审批实例列表。

npx ts-node scripts/list-user-done-approvals.ts <userId> [--startTime <timestamp>] [--endTime <timestamp>] [--maxResults <max>] [--nextToken <token>] [--debug]

25. 获取待审批数量 (get-user-todo-count)

获取用户待审批任务数量。

npx ts-node scripts/get-user-todo-count.ts <userId> [--debug]

输出:

{
  "success": true,
  "userId": "user001",
  "count": 5
}

26. 发起审批实例 (create-approval-instance)

创建新的审批实例。

npx ts-node scripts/create-approval-instance.ts <processCode> <originatorUserId> <deptId> '<formValuesJson>' [--ccList "user1,user2"] [--debug]

示例:

npx ts-node scripts/create-approval-instance.ts "PROC-XXX" "user001" "1" '[{"name":"标题","value":"请假申请"},{"name":"请假天数","value":"3"}]'

输出:

{
  "success": true,
  "processCode": "PROC-XXX",
  "originatorUserId": "user001",
  "instanceId": "xxx-new"
}

27. 终止审批实例 (terminate-approval-instance)

撤销/终止指定的审批实例。

npx ts-node scripts/terminate-approval-instance.ts <instanceId> <operatingUserId> [--remark "撤销原因"] [--debug]

输出:

{
  "success": true,
  "instanceId": "xxx-123",
  "message": "审批实例已终止"
}

28. 执行审批任务 (execute-approval-task)

同意或拒绝审批任务。

npx ts-node scripts/execute-approval-task.ts <instanceId> <userId> <agree|refuse> [--taskId <taskId>] [--remark "审批意见"] [--debug]

示例:

npx ts-node scripts/execute-approval-task.ts "xxx-123" "user001" "agree" --remark "同意申请"
npx ts-node scripts/execute-approval-task.ts "xxx-123" "user001" "refuse" --remark "条件不符"

输出:

{
  "success": true,
  "instanceId": "xxx-123",
  "userId": "user001",
  "action": "agree",
  "message": "已同意审批"
}

29. 转交审批任务 (transfer-approval-task)

将审批任务转交给其他用户处理。

npx ts-node scripts/transfer-approval-task.ts <instanceId> <userId> <transferToUserId> [--taskId <taskId>] [--remark "转交原因"] [--debug]

输出:

{
  "success": true,
  "instanceId": "xxx-123",
  "userId": "user001",
  "transferToUserId": "user002",
  "message": "审批任务已转交"
}

30. 添加审批评论 (add-approval-comment)

为审批实例添加评论。

npx ts-node scripts/add-approval-comment.ts <instanceId> <userId> "<comment>" [--debug]

输出:

{
  "success": true,
  "instanceId": "xxx-123",
  "userId": "user001",
  "message": "评论已添加"
}

错误处理

所有脚本在错误时返回统一格式:

{
  "success": false,
  "error": {
    "code": "ERROR_CODE",
    "message": "错误描述"
  }
}

常见错误码:

  • MISSING_CREDENTIALS - 未设置环境变量
  • INVALID_ARGUMENTS - 参数不足
  • AUTH_FAILED - access_token 获取失败
  • UNKNOWN_ERROR - API 调用异常

平台分布

OpenClaw

79.43%
按下载量换算31,953

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

未展示

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills