企业微信服务端 API 开放了丰富的能力接口,开发者可以借助接口能力,实现企业服务及企业微信的集成。
注意:
API 方法
企业微信 API 支持以下方法:
方法 | 方法标识 | 方法描述 | 接口文档 |
读取成员 | user_get | 应用只能获取可见范围内的成员信息,且每种应用获取的字段有所不同,在返回结果说明中会逐个说明 | |
创建成员 | user_create | 仅通讯录同步助手或第三方通讯录应用可调用。注意,每个部门下的部门、成员总数不能超过3万个 | |
更新成员 | user_update | 仅通讯录同步助手或第三方通讯录应用可调用。注意,每个部门下的部门、成员总数不能超过3万个 | |
删除成员 | user_delete | 仅通讯录同步助手或第三方通讯录应用可调用。若是绑定了腾讯企业邮箱,则会同时删除邮箱账号 | |
批量删除成员 | user_batchdelete | 仅通讯录同步助手或第三方通讯录应用可调用 | |
获取部门成员 | user_simplelist | 应用须拥有指定部门的查看权限 | |
获取部门成员详情 | user_list | 应用须拥有指定部门的查看权限 | |
手机号获取 userid | user_getuserid | 通过手机号获取其所对应的 userid | |
邮箱获取 userid | get_userid_by_email | 通过邮箱获取其所对应的 userid | |
创建部门 | department_create | 部门的最大层级为15层;部门总数不能超过3万个;每个部门下的节点不能超过3万个 | |
更新部门 | department_update | 如果非必须的字段未指定,则不更新该字段。应用须拥有指定部门的管理权限。如若要移动部门,需要有新父部门的管理权限 | |
删除部门 | department_delete | 应用须拥有指定部门的管理权限。第三方仅通讯录应用可以调用 | |
获取部门列表 | department_list | 由于该接口性能较低,建议换用获取子部门 ID 列表与获取单个部门详情 | |
获取子部门 ID 列表 | department_simplelist | 获取子部门 ID 列表 | |
获取单个部门详情 | department_get | 获取单个部门详情 | |
创建标签 | tag_create | 创建的标签属于该应用,只有该应用的 secret 才可以增删成员 | |
更新标签名字 | tag_update | 调用的应用必须是指定标签的创建者 | |
删除标签 | tag_delete | 调用的应用必须是指定标签的创建者 | |
获取标签成员 | tag_get | 无限制,但返回列表仅包含应用可见范围的成员 | |
增加标签成员 | tag_addtagusers | 调用的应用必须是指定标签的创建者;成员属于应用的可见范围。注意,每个标签下部门数和人员数总和不能超过3万个 | |
删除标签成员 | tag_deltagusers | 调用的应用必须是指定标签的创建者;成员属于应用的可见范围 | |
获取标签列表 | tag_list | 自建应用或通讯同步助手可以获取所有标签列表;第三方应用仅可获取自己创建的标签 | |
发送应用消息 | message_send | 支持推送文本、图片、文本卡片消息 | |
撤回应用消息 | message_recall | 本接口可以撤回24小时内通过发送应用消息接口推送的消息,仅可撤回企业微信端的数据,微信插件端的数据不支持撤回 | |
创建群聊会话 | appchat_create | 只允许企业自建应用调用,且应用的可见范围必须是根部门 | |
修改群聊会话 | appchat_update | 只允许企业自建应用调用,且应用的可见范围必须是根部门 | |
获取群聊会话 | appchat_get | 只允许企业自建应用调用,且应用的可见范围必须是根部门 | |
应用推送消息到群聊会话 | appchat_send | 只允许企业自建应用调用,且应用的可见范围必须是根部门 | |
创建日历 | calendar_add | 该接口用于通过应用在企业内创建一个日历 | |
更新日历 | calendar_update | 该接口用于通过应用在企业内更新一个日历 | |
获取日历详情 | calendar_get | 获取日历详情 | |
删除日历 | calendar_del | 删除日历 | |
创建日程 | schedule_add | 该接口用于在日历中创建一个日程 | |
更新日程 | schedule_update | 该接口用于在日历中更新指定的日程 | |
新增日程参与者 | schedule_add_attendees | 该接口用于在日历中更新指定的日程参与者列表 | |
删除日程参与者 | schedule_del_attendees | 该接口用于在日历中更新指定的日程参与者列表 | |
获取日程详情 | schedule_get | 该接口用于获取指定的日程详情 | |
取消日程 | schedule_del | 该接口用于取消指定的日程 | |
获取日历下的日程列表 | schedule_get_by_calendar | 该接口用于获取指定的日历下的日程列表。仅可获取应用自己创建的日历下的日程 | |
发送学校通知 | externalcontact_message_send | 学校可以通过此接口来给家长发送不同类型的学校通知,来满足多种场景下的学校通知需求。目前支持的消息类型为文本、图片、语音、视频、文件、图文 | |
获取学校通知二维码 | get_subscribe_qr_code | 学校可通过此接口获取学校通知二维码,家长可通过扫描此二维码关注学校通知并接收学校推送的消息 | |
设置关注学校通知的模式 | set_subscribe_mode | 可通过此接口修改家长关注学校通知的模式:“可扫码填写资料加入”或“禁止扫码填写资料加入” | |
外部联系人 openid 转换 | convert_to_openid | 企业和服务商可通过此接口,将微信外部联系人的 userid 转为微信 openid,用于调用支付相关接口 | |
获取可使用的家长范围 | get_allow_scope | 获取可在微信学校通知 > 学校应用使用该应用的家长范围,以学生或部门列表的形式返回 | |
读取学生或家长 | school_user_get | 读取学生或家长 | |
获取部门学生详情 | school_user_list | 获取部门学生详情 | |
获取部门家长详情 | school_user_list_parent | 获取部门家长详情 | |
获取部门列表(家校) | get_userid_by_email | 获取部门列表(家校) | |
获取企业的 jsapi_ticket | get_corp_jsapi_ticket | JS-SDK 使用签名方法,该方法会计算 JS-SDK 所需签名并且通过 corpid 和 agentid 作为 ticket 缓存依据,到期自动更新 | |
获取应用的 jsapi_ticket | get_agent_jsapi_ticket | JS-SDK 使用签名方法,该方法会计算 JS-SDK 所需签名并且通过 corpid 和 agentid 作为 ticket 缓存依据,到期自动更新 | |
获取客户群列表 | externalcontact_groupchat_list | 该接口用于获取配置过客户群管理的客户群列表 | |
获取客户群详情 | externalcontact_groupchat_get | 通过客户群 ID,获取详情。包括群名、群成员列表、群成员入群时间、入群方式。(客户群是由具有客户群使用权限的成员创建的外部群) | |
客户群 opengid 转换 | opengid_to_chatid | 用户在微信里的客户群里打开小程序时,某些场景下可以获取到群的 opengid,如果该群是企业微信的客户群,则企业或第三方可以调用此接口将一个 opengid 转换为客户群 chat_id | |
配置客户联系我方式 | add_contact_way | 企业可通过此接口为具有客户联系功能的成员生成专属的联系我二维码或者联系我按钮 | |
获取企业已配置的联系我方式 | get_contact_way | 获取企业配置的联系我二维码和联系我小程序按钮 | |
更新企业已配置的联系我方式 | update_contact_way | 更新企业配置的联系我二维码和联系我小程序按钮中的信息,如使用人员和备注等 | |
删除企业已配置的联系我方式 | del_contact_way | 删除一个已配置的联系我二维码或者联系我小程序按钮 | |
结束临时会话 | close_temp_chat | 将指定的企业成员和客户之前的临时会话断开,断开前会自动下发已配置的结束语 | |
配置客户群进群方式 | add_join_way | 企业可调用此接口来生成并配置加入群聊的二维码或者小程序按钮,客户通过扫描二维码或点击小程序上的按钮,即可加入特定的客户群 | |
获取客户群进群方式配置 | get_join_way | 获取企业配置的群二维码或小程序按钮 | |
更新客户群进群方式配置 | update_join_way | 更新进群方式配置信息 | |
删除客户群进群方式配置 | del_join_way | 删除一个进群方式配置 |