三步搭建“钉钉待办推送” (curl版)
2026/3/20 23:06:35 网站建设 项目流程

三步搭建“钉钉待办推送” (curl版)



第一部:搞定“通行证” (配置应用)

想调用接口,得先有个“身份”。

  1. 创建应用
    • 登录 钉钉开放平台 ->应用开发->企业内部开发
    • 创建钉钉新应用
  2. 拿钥匙 (Key & Secret)
    • “凭证与基础信息”里,复制AppKeyAppSecret
    • 这是你的账号密码,保存好。
  3. 开权限 (必做)
    • 左侧“权限管理”,搜索并申请:待办任务写权限(todo.task:write)。
    • 没这个权限,接口会直接报错。
  4. 设范围 (巨坑预警)
    • 左侧“版本管理与发布”->“设置可见范围”
    • 一定要把“你自己”选进去!
    • 不选的话,应用就是“瞎子”,查不到你的信息。

第二部:锁定“目标人物” (获取 UnionId)

这是最关键的一步。钉钉推待办只认unionId。我们分两步走:先在网页上看你的 UserID,再换成 UnionId。

1. 拿到 AccessToken (临时令牌)

所有接口都得带这个 Token。打开终端(CMD/Terminal),替换你的 Key 和 Secret:

curl "https://oapi.dingtalk.com/gettoken?appkey=你的AppKey&appsecret=你的AppSecret"

复制结果里的access_token,下一步要用。

2. 找到你的 UserID (直观方案)

不用调复杂接口,直接去管理员后台看。

  • 地址:https://oa.dingtalk.com/contacts.htm#/contacts
  • 操作:在通讯录里点击你的名字,在右侧弹出的详情页里,找到UserID(通常在“员工UserID”这一栏,或者看浏览器地址栏最后一段)。
  • 记下这个 UserID(例如011645...)。

3. 用 UserID 换 UnionId (关键转换)

因为 UserID 不能直接发待办,我们需要用它换取 UnionId。运行下面命令:

curl --location --request POST 'https://oapi.dingtalk.com/topapi/v2/user/get?access_token=刚才拿到的Token' \ --header 'Content-Type: application/json' \ --data-raw '{ "userid": "刚才后台看到的UserID" }'

返回结果:找到 result 里的 unionid (例如 ZYR7…)。

这就是你的终极“身份证”,记下来!

(备选方案:如果你进不去管理员后台,也可以用v1.0/contact/users/getByMobile接口通过手机号反查,这里不展开。)


第三部:发射!(推送待办)

万事俱备,直接通过命令行发起待办任务。我们使用最新的 v1.0 接口。

修改参数

  • YOUR_TOKEN: 第二部第1步拿到的 Token。
  • YOUR_UNION_ID: 第二部第3步拿到的 UnionId。

执行命令

curl --location --request POST 'https://api.dingtalk.com/v1.0/todo/users/YOUR_UNION_ID/tasks' \ --header 'x-acs-dingtalk-access-token: YOUR_TOKEN' \ --header 'Content-Type: application/json' \ --data-raw '{ "sourceId": "CURL_DEMO_001", "subject": "【测试】这是一个Curl发出的待办", "description": "不用写代码,命令行直接把任务推送到手机。", "dueTime": 1735660800000, "executorIds": ["YOUR_UNION_ID"], "isOnlyShowExecutor": true, "detailUrl": { "appUrl": "https://www.dingtalk.com", "pcUrl": "https://www.dingtalk.com" }, "priority": 20 }'

见证奇迹:

回车敲下的瞬间,你的手机钉钉会弹出一条 “待办任务” 通知。点击它,会跳转到钉钉官网。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询