钉钉开发文档

发送普通消息

更新时间: 2019-4-9

发送普通消息

注意:不在当前接口调用所使用的企业的接收者(单聊接收者或者群聊会话里的接收者)是收不到消息的。

请求方式:POST(HTTPS)
请求地址https://oapi.dingtalk.com/message/send_to_conversation?access_token=ACCESS_TOKEN
参数说明

参数 参数类型 必须 说明
sender String 消息发送者 userId
cid String 群消息或者个人聊天会话Id,(通过JSAPI的dd.chooseChatForNormalMsg接口唤起联系人界面选择之后即可拿到会话ID,之后您可以使用获取到的cid调用此接口)
msg json 消息内容,消息类型和样例参考“消息类型与数据格式”。最长不超过2048个字节

SDK请求示例(JAVA)

DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/message/send_to_conversation");

OapiMessageSendToConversationRequest req = new OapiMessageSendToConversationRequest();
req.setSender("01376814877479");
req.setCid("14ac70d94e79377b88aa5fc75759fe84");
OapiMessageSendToConversationRequest.Msg msg = new OapiMessageSendToConversationRequest.Msg();

// 文本消息
OapiMessageSendToConversationRequest.Text text = new OapiMessageSendToConversationRequest.Text();
text.setContent("测试测试");
msg.setText(text);
msg.setMsgtype("text");
req.setMsg(msg);

// 图片
OapiMessageSendToConversationRequest.Image image = new OapiMessageSendToConversationRequest.Image();
image.setMediaId("@lADOdvRYes0CbM0CbA");
msg.setImage(image);
msg.setMsgtype("image");
req.setMsg(msg);

// 文件
OapiMessageSendToConversationRequest.File file = new OapiMessageSendToConversationRequest.File();
file.setMediaId("@lADOdvRYes0CbM0CbA");
msg.setFile(file);
msg.setMsgtype("file");
req.setMsg(msg);


OapiMessageSendToConversationRequest.Markdown markdown = new OapiMessageSendToConversationRequest.Markdown();
markdown.setText("# 这是支持markdown的文本 \\n## 标题2  \\n* 列表1 \\n![alt 啊](https://gw.alipayobjects.com/zos/skylark-tools/public/files/b424a1af2f0766f39d4a7df52ebe0083.png)");
markdown.setTitle("首屏会话透出的展示内容");
msg.setMarkdown(markdown);
msg.setMsgtype("markdown");
req.setMsg(msg);


OapiMessageSendToConversationRequest.ActionCard actionCard = new OapiMessageSendToConversationRequest.ActionCard();
actionCard.setTitle("是透出到会话列表和通知的文案");
actionCard.setMarkdown("持markdown格式的正文内");
actionCard.setSingleTitle("查看详情");
actionCard.setSingleUrl("https://open.dingtalk.com");
msg.setActionCard(actionCard);
msg.setMsgtype("action_card");
req.setMsg(msg);

// link消息
OapiMessageSendToConversationRequest.Link link = new OapiMessageSendToConversationRequest.Link();
link.setMessageUrl("https://www.baidu.com/");
link.setPicUrl("@lADOdvRYes0CbM0CbA");
link.setText("步扬测试");
link.setTitle("oapi");
msg.setLink(link);
msg.setMsgtype("link");
req.setMsg(msg);

OapiMessageSendToConversationResponse    response = client.execute(req, accessToken);

返回说明

  1. 接收者可以是单聊接收者或者群聊会话里的接收者,如果接收者是当前接口调用所使用的企业的员工,则是有效接收者。

  2. 接口返回所有有效接收者的userId。

  3. 非有效接收者是收不到消息的。

{
    "errcode": 0,
    "errmsg": "ok",
    "receiver": "UserID1|UserID2"
}
以上内容是否对您有帮助:
在文档使用中是否遇到以下问题(多选):
  • 内容错误
  • 更新不及时
  • 链接错误
  • 缺少代码/图片示例
  • 太简单/步骤待完善
手机号
更多建议
提交成功,感谢您的反馈!