1. 通讯录管理
企业微信 API copy
  • 企业内部开发
    • 快速入门
      • 概述
      • 简易教程
    • 开发指南
      • 基本概念介绍
      • 开发前必读
      • 回调配置
        • 回调配置
        • 回调配置-支持Http Get请求验证URL有效性
        • 回调配置-支持Http Post请求接收业务数据
        • 回调配置-获取企业微信服务器的ip段
      • 自建应用与第三方应用的对接
        • userid转换
        • external_userid转换
      • 获取access_token
      • 获取企业微信API域名IP段
    • 通讯录管理
      • 概述
      • 通讯录同步接口调整
      • 成员管理
        • 创建成员
        • 读取成员
        • 更新成员
        • 删除成员
        • 批量删除成员
        • 获取部门成员
        • 获取部门成员详情
        • userid与openid互换-userid转openid
        • userid与openid互换-openid转userid
        • 二次验证
        • 邀请成员
        • 获取加入企业二维码
        • 手机号获取userid
        • 邮箱获取userid
        • 获取成员ID列表
      • 部门管理
        • 获取单个部门详情
        • 创建部门
        • 更新部门
        • 删除部门
        • 获取部门列表
        • 获取子部门ID列表
      • 标签管理
        • 创建标签
        • 更新标签名字
        • 删除标签
        • 获取标签成员
        • 增加标签成员
        • 删除标签成员
        • 获取标签列表
      • 异步批量接口
        • 概述
        • 增量更新成员
        • 全量覆盖成员
        • 全量覆盖部门
        • 获取异步任务结果
      • 通讯录回调通知
        • 概述
        • 成员变更通知
        • 部门变更通知
        • 标签变更通知
        • 异步任务完成通知
      • 互联企业
        • 获取应用的可见范围
        • 获取互联企业成员详细信息
        • 获取互联企业部门成员
        • 获取互联企业部门成员详情
        • 获取互联企业部门列表
      • 异步导出接口
        • 概述
        • 导出任务完成通知
        • 导出成员
        • 导出成员详情
        • 导出部门
        • 导出标签成员
        • 获取导出结果
    • 客户联系
      • 概述
      • 企业服务人员管理
        • 结束语定义
        • 附录
        • 获取配置了客户联系功能的成员列表
        • 客户联系「联系我」管理-配置客户联系「联系我」方式
        • 客户联系「联系我」管理-更新企业已配置的「联系我」方式
        • 客户联系「联系我」管理-获取企业已配置的「联系我」方式
        • 客户联系「联系我」管理-获取企业已配置的「联系我」列表
        • 客户联系「联系我」管理-删除企业已配置的「联系我」方式
        • 客户联系「联系我」管理-结束临时会话
      • 客户管理
        • 客户联系规则组管理
          • 客户联系规则组管理-获取规则组列表
          • 客户联系规则组管理-获取规则组详情
          • 客户联系规则组管理-获取规则组管理范围
          • 客户联系规则组管理-创建新的规则组
          • 客户联系规则组管理-编辑规则组及其管理范围
          • 客户联系规则组管理-删除规则组
        • 获取客户列表
        • 获取客户详情
        • 批量获取客户详情
        • 修改客户备注信息
      • 客户标签管理
        • 管理企业标签
          • 说明
          • 管理企业标签-获取企业标签库
          • 管理企业标签-添加企业客户标签
          • 管理企业标签-编辑企业客户标签
          • 管理企业标签-删除企业客户标签
        • 管理企业规则组下的客户标签
          • 管理企业规则组下的客户标签-获取指定规则组下的企业客户标签
          • 管理企业规则组下的客户标签-为指定规则组创建企业客户标签
          • 管理企业规则组下的客户标签-编辑指定规则组下的企业客户标签
          • 管理企业规则组下的客户标签-删除指定规则组下的企业客户标签
        • 编辑客户企业标签
      • 在职继承
        • 分配在职成员的客户
        • 查询客户接替状态
        • 分配在职成员的客户群
      • 离职继承
        • 获取待分配的离职成员列表
        • 分配离职成员的客户
        • 查询客户接替状态
        • 分配离职成员的客户群
      • 客户群管理
        • 获取客户群列表
        • 获取客户群详情
        • 客户群opengid转换
      • 联系我与客户入群方式
        • 客户联系「联系我」管理
          • 权限说明
          • 结束语定义
          • 配置客户联系「联系我」方式
          • 获取企业已配置的「联系我」方式
          • 获取企业已配置的「联系我」列表
          • 更新企业已配置的「联系我」方式
          • 删除企业已配置的「联系我」方式
          • 结束临时会话
        • 客户群「加入群聊」管理
          • 权限说明
          • 配置客户群进群方式
          • 获取客户群进群方式配置
          • 更新客户群进群方式配置
          • 删除客户群进群方式配置
      • 客户朋友圈
        • 概述
        • 企业发表内容到客户的朋友圈
          • 企业发表内容到客户的朋友圈-创建发表任务
          • 企业发表内容到客户的朋友圈-获取任务创建结果
        • 获取客户朋友圈全部的发表记录
          • 获取客户朋友圈全部的发表记录-获取企业全部的发表列表
          • 获取客户朋友圈全部的发表记录-获取客户朋友圈企业发表的列表
          • 获取客户朋友圈全部的发表记录-获取客户朋友圈发表时选择的可见范围
          • 获取客户朋友圈全部的发表记录-获取客户朋友圈发表后的可见客户列表
          • 获取客户朋友圈全部的发表记录-获取客户朋友圈的互动数据
        • 客户朋友圈规则组管理
          • 客户朋友圈规则组管理-获取规则组列表
          • 客户朋友圈规则组管理-获取规则组详情
          • 客户朋友圈规则组管理-获取规则组管理范围
          • 客户朋友圈规则组管理-创建新的规则组
          • 客户朋友圈规则组管理-编辑规则组及其管理范围
          • 客户朋友圈规则组管理-删除规则组
        • 停止发表企业朋友圈
      • 消息推送
        • 获取企业的全部群发记录
          • 概述
          • 获取企业的全部群发记录-获取群发记录列表
          • 获取企业的全部群发记录-获取群发成员发送任务列表
          • 获取企业的全部群发记录-获取企业群发成员执行结果
        • 创建企业群发
        • 发送新客户欢迎语
        • 入群欢迎语素材管理-添加
        • 入群欢迎语素材管理-编辑
        • 入群欢迎语素材管理-获取
        • 入群欢迎语素材管理-删除
        • 提醒成员群发
        • 停止企业群发
      • 统计管理
        • 获取「群聊数据统计」数据-按群主聚合的方式
        • 获取「群聊数据统计」数据-按自然日聚合的方式
        • 获取「联系客户统计」数据
      • 变更回调
        • 概述
        • 事件格式
      • 管理商品图册
        • 概述
        • 创建商品图册
        • 获取商品图册
        • 删除商品图册
        • 获取商品图册列表
        • 编辑商品图册
      • 管理聊天敏感词
        • 概述
        • 管理聊天敏感词-新建敏感词规则
        • 管理聊天敏感词-获取敏感词规则列表
        • 管理聊天敏感词-获取敏感词规则详情
        • 管理聊天敏感词-修改敏感词规则
        • 管理聊天敏感词 删除敏感词规则
      • 上传附件资源
    • 微信客服
      • 概述
      • 回调通知
      • 客服帐号管理
        • 添加客服帐号
        • 删除客服帐号
        • 修改客服帐号
        • 获取客服帐号列表
        • 获取客服帐号链接
      • 接待人员管理
        • 添加接待人员
        • 添加接待人员_v1
        • 删除接待人员
        • 获取接待人员列表
      • 会话分配与消息收发
        • 分配客服会话
          • 概述
          • 分配客服会话-获取会话状态
          • 分配客服会话-变更会话状态
        • 接收消息和事件-读取消息
        • 发送消息
        • 发送事件响应消息
      • 「升级服务」配置
        • 什么是升级服务
        • 「升级服务」配置-获取配置的专员与客户群
        • 「升级服务」配置-为客户升级为专员服务
        • 「升级服务」配置-为客户升级为客户群服务
        • 「升级服务」配置-为客户取消推荐
      • 其他基础信息获取
        • 获取客户基础信息
      • 统计管理
        • 获取「客户数据统计」接待人员明细数据
        • 获取「客户数据统计」企业汇总数据
      • 机器人管理
        • 知识库分组管理
          • 知识库分组管理
          • 添加分组
          • 删除分组
          • 修改分组
          • 获取分组列表
        • 知识库问答管理
          • 知识库问答管理
          • 附录-问答附件类型
          • 添加问答
          • 删除问答
          • 修改问答
          • 获取问答列表
    • 身份验证
      • 网页授权登录
        • 开始开发
        • 构造网页授权链接
        • 获取访问用户身份
        • 获取访问用户敏感信息
      • 扫码授权登录
        • 开始开发
        • 构造扫码登录链接
        • 获取访问用户身份
    • 应用管理
      • 概述
      • 自定义菜单
        • 说明
        • 创建菜单
        • 获取菜单
        • 删除菜单
      • 设置工作台自定义展示
        • 模版类型数据结构
        • 说明
        • 修改设置工作台自定义开关事件推送
        • 设置工作台自定义展示-设置应用在工作台展示的模版
        • 设置工作台自定义展示-获取应用在工作台展示的模版
        • 设置工作台自定义展示-设置应用在用户工作台展示的数据
      • 获取应用-获取指定的应用详情
      • 获取应用-获取access_token对应的应用列表
      • 设置应用
    • 消息推送
      • 概述
      • 接收消息与事件
        • 消息格式
        • 事件格式
        • 被动回复消息格式
        • 概述
          • 概述
          • 概述-验证URL有效性
          • 概述-使用接收消息
          • 概述-获取企业微信服务器的ip段
      • 发送消息到群聊会话
        • 概述
        • 创建群聊会话
        • 修改群聊会话
        • 获取群聊会话
        • 应用推送消息
      • 互联企业消息推送
        • 接受消息与事件
        • 发送应用消息
      • 家校消息推送
        • 发送「学校通知」
      • 发送应用消息
        • 消息类型
        • 发送应用消息
      • 更新模版卡片消息
      • 撤回应用消息
    • 素材管理
      • 概述
      • 异步上传临时素材
        • 回调异步任务结果
        • 查询异步任务结果
        • 生成异步上传任务
      • 上传临时素材
      • 上传图片
      • 获取临时素材
      • 获取高清语音素材
    • OA
      • 打卡
        • 获取企业所有打卡规则
        • 获取员工打卡规则
        • 获取打卡记录数据
        • 获取打卡日报数据
        • 获取打卡月报数据
        • 获取打卡人员排班信息
        • 为打卡人员排班
        • 录入打卡人员人脸信息
        • 获取设备打卡数据
        • 为打卡人员补卡
      • 审批
        • 概述
        • 审批申请状态变化回调通知
        • 审批流程引擎
          • 概述
          • 查询自建应用审批单当前状态
        • 获取审批模板详情
        • 提交审批申请
        • 批量获取审批单号
        • 获取审批申请详情
        • 获取审批数据(旧)
        • 获取企业假期管理配置
        • 获取成员假期余额
        • 修改成员假期余额
        • 创建审批模板
        • 更新审批模板
      • 汇报
        • 概述
        • 导出汇报文档
          • 生成导出任务
          • 查询导出结果
        • 批量获取汇报记录单号
        • 获取汇报记录详情
        • 获取汇报统计数据
      • 自建应用
        • 审批流程引擎
      • 会议室
        • 说明
        • 概述
        • 回调事件
        • 会议室管理
          • 会议室管理-添加会议室
          • 会议室管理-查询会议室
          • 会议室管理-编辑会议室
          • 会议室管理-删除会议室
        • 会议室预订管理
          • 附录
          • 会议室预定管理 查询会议室的预定信息
          • 会议室预定管理 预定会议室
          • 会议室预定管理 取消预定会议室
          • 会议室预定管理 根据会议ID查询会议室的预定信息
      • 紧急通知应用
        • 概述
        • 发起语音电话
        • 获取接听状态
    • 效率工具
      • 日程
        • 概述
        • 回调事件
        • 管理日历
          • 日历接口 创建日历
          • 日历接口 更新日历
          • 日历接口 获取日历详情
          • 日历接口 删除日历
        • 管理日程
          • 更新重复日程
          • 新增日程参与者
          • 删除日程参与者
          • 日程接口 获取日历下的日程列表
          • 日程接口 获取日程详情
          • 日程接口 取消日程
          • 日程接口 创建日程
          • 日程接口更新日程
      • 会议
        • 回调通知
        • 概述
        • 创建预约会议
        • 修改预约会议
        • 取消预约会议
        • 获取成员会议ID列表
        • 获取会议详情
      • 直播
        • 概述
        • 直播回调事件
        • 创建预约直播
        • 修改预约直播
        • 取消预约直播
        • 删除直播回放
        • 在微信中观看直播或直播回放
        • 获取成员直播ID列表
        • 获取直播详情
        • 获取直播观看明细
        • 获取跳转小程序商城的直播观众信息
      • 微盘
        • 概述
        • 管理空间
          • 空间管理 新建空间
          • 空间管理 重命名空间
          • 空间管理 解散空间
          • 空间管理 获取空间信息
        • 管理空间权限
          • 空间权限 添加成员/部门
          • 空间权限 移除成员/部门
          • 空间权限 安全设置
          • 空间权限 获取邀请链接
          • 空间权限 获取空间信息
        • 管理文件
          • 文件管理 获取文件列表
          • 文件管理 上传文件
          • 文件分块上传 分块上传初始化
          • 文件分块上传 分块上传文件
          • 文件分块上传 分块上传完成
          • 文件管理 下载文件
          • 文件管理 新建文件/微文档
          • 文件管理 重命名文件
          • 文件管理 移动文件
          • 文件管理 删除文件
          • 文件管理 文件信息
        • 管理文件权限
          • 文件权限 新增指定人
          • 文件权限 删除指定人
          • 文件权限 分享设置
          • 文件权限 获取分享链接
          • 获取文件权限信息
          • 修改文件安全设置
        • 版本和容量管理
          • 获取盘专业版信息
          • 获取盘容量信息
        • 回调通知
          • 概述
          • 微盘容量不足事件
          • 空间变更事件
          • 文件变更事件
          • 解散空间
          • 修改空间成员
          • 修改空间安全设置
      • 公费电话
        • 获取公费电话拨打记录
      • 邮件
        • 概述
        • 回调通知
        • 发送邮件
          • 发送普通邮件
          • 发送日程邮件
          • 发送会议邮件
        • 获取接收的邮件
          • 获取收件箱邮件列表
          • 获取邮件内容
        • 管理应用邮箱账号
          • 更新应用邮箱帐号
          • 查询应用邮箱帐号
        • 管理邮件群组
          • 创建邮件群组
          • 更新邮件群组
          • 删除邮件群组
          • 获取邮件群组详情
          • 模糊搜索邮件群组
        • 管理业务邮箱
          • 创建业务邮箱
          • 更新业务邮箱
          • 删除业务邮箱
          • 获取业务邮箱详情
          • 模糊搜索业务邮箱
        • 其他邮件客户端登录设置
          • 获取用户功能属性
          • 更改用户功能属性
        • 禁用/启用邮箱帐号
        • 获取邮件未读数
      • 文档
        • 概述
        • 管理文档
          • 新建文档
          • 重命名文档/收集表
          • 删除文档/收集表
          • 获取文档基础信息
          • 分享文档
        • 设置文档权限
          • 获取文档权限信息
          • 修改文档查看规则
          • 修改文档通知范围及权限
          • 修改文档安全设置
        • 管理收集表
          • 创建收集表
          • 编辑收集表
          • 获取收集表信息
          • 读取收集表答案
          • 收集表的统计信息查询
        • 回调通知
          • 概述
          • 修改文档成员事件
          • 删除文档事件
          • 收集表完成事件
    • 企业支付
      • 概述
      • 签名算法
      • 企业红包
        • 发放企业红包
        • 查询红包记录
      • 向员工付款
        • 向员工付款
        • 查询付款记录
      • 向员工收款
        • 向员工收款
      • 对外收款
        • 概述
        • 收款商户号管理 新增商户号
        • 收款商户号管理 查询商户号详情
        • 收款商户号管理 删除商户号
        • 收款商户号管理 设置商户号使用范围
        • 获取对外收款记录
        • 获取收款项目的商户单号
    • 企业互联
      • 概述
      • 获取应用共享信息
      • 获取下级企业的access_token
      • 获取下级企业的小程序session
    • 上下游
      • 概述
      • 上下游通讯管理
        • 获取上下游信息
          • 获取上下游列表
          • 获取上下游通讯录分组
          • 获取企业上下游通讯录分组下的企业详情列表
          • 获取企业上下游通讯录下的企业信息
          • 移除企业
        • 提交批量导入上下游联系人任务
        • 获取异步任务结果
      • 基础接口
        • 获取应用共享信息
        • 获取下级/下游企业的access_token
        • 获取下级/下游企业小程序session
        • 上下游企业应用获取微信用户的external_userid
      • 上下游规则
        • 获取对接规则id列表
        • 删除对接规则
        • 获取对接规则详情
        • 新增对接规则
        • 更新对接规则
      • 回调事件
        • 上下游变更回调
        • 异步任务完成通知
    • 会话内容存档
      • 概述
      • 使用前帮助
      • 开发案例演示
      • 常见问题解答
      • 客户同意进行聊天内容存档事件回调
      • 产生会话回调事件
      • 获取会话内容
        • 说明
        • 获取会话内容 获取机器人信息
      • 获取会话内容存档开启成员列表
      • 获取会话同意情况 群聊请求
      • 获取会话同意情况 单聊请求
      • 获取会话内容存档内部群信息
    • 电子发票
      • 概述
      • 查询电子发票
      • 更新发票状态
      • 批量更新发票状态
      • 批量查询电子发票
    • 家校沟通
      • 概述
      • 基础接口
        • 获取「学校通知」二维码
        • 管理「学校通知」的关注模式-设置关注「学校通知」的模式
        • 管理「学校通知」的关注模式-获取关注「学校通知」的模式
        • 发送「学校通知」
        • 外部联系人openid转换
        • 获取可使用的家长范围
      • 网页授权登录
        • 开始开发
        • 构造网页授权链接
        • 获取访问用户身份-企业内部开发
        • 获取家校访问用户身份
      • 学生与家长管理
        • 创建学生
        • 删除学生
        • 更新学生
        • 批量创建学生
        • 批量删除学生
        • 批量更新学生
        • 创建家长
        • 删除家长
        • 更新家长
        • 批量创建家长
        • 批量删除家长
        • 批量更新家长
        • 读取学生或家长
        • 获取部门成员详情
        • 设置家校通讯录自动同步模式
        • 获取部门家长详情
      • 部门管理
        • 标准年级对照表
        • 创建部门
        • 更新部门
        • 删除部门
        • 获取部门列表
        • 修改自动升年级的配置
      • 家校通讯录变更回调
        • 成员变更事件
        • 部门变更事件
    • 家校应用
      • 健康上报
        • 获取健康上报使用统计
        • 获取健康上报任务ID列表
        • 获取健康上报任务详情
        • 获取用户填写答案
      • 复学码
        • 获取老师健康信息
        • 获取学生健康信息
        • 获取师生健康码
      • 上课直播
        • 获取老师直播ID列表
        • 获取直播详情
        • 获取观看直播统计
        • 获取未观看直播统计
        • 删除直播回放
        • 获取观看直播统计V2
        • 获取未观看直播统计V2
      • 班级收款
        • 获取学生付款结果
        • 获取订单详情
    • 政民沟通
      • 配置网格结构
        • 概述
        • 添加网格
        • 编辑网格
        • 删除网格
        • 获取网格列表
        • 获取用户负责及参与的网格列表
      • 配置事件类别
        • 添加事件类别
        • 修改事件类别
        • 删除事件类别
        • 获取事件类别列表
      • 巡查上报
        • 概述
        • 获取配置的网格及网格负责人
        • 获取单位巡查上报数据统计
        • 获取个人巡查上报数据统计
        • 获取上报事件分类统计
        • 获取巡查上报事件列表
        • 获取巡查上报的事件详情信息
      • 居民上报
        • 获取配置的网格及网格负责人
        • 获取单位居民上报数据统计
        • 获取个人居民上报数据统计
        • 获取上报事件分类统计
        • 获取居民上报事件列表
        • 获取居民上报的事件详情信息
      • 防疫场所码
        • 概述
        • 获取场所码列表
        • 获取场所码上报问卷
        • 获取场所码上报明细
  • 第三方应用开发
    • 开发指南
      • 开发前必读
      • 基本概念介绍
      • 回调配置
        • 回调配置
        • 回调配置-支持Http Get请求验证URL有效性
        • 回调配置-支持Http Post请求接收业务数据
        • 回调配置-获取企业微信服务器的ip段
      • 企业微信账号ID安全性全面升级
        • 概述
        • FAQ
        • 一、企业corpid的升级方案
          • 1.1 升级前后对比 - 1.3 历史已授权企业的方案
          • 1.4 corpid转换
        • 二、企业员工userid的升级方案
          • 2.1 升级前后对比 - 2.3历史已授权企业的方案
          • 2.4 userid的转换
        • 三、企业员工external_userid的升级方案
          • 3.1 升级前后对比 - 3.3 历史已授权企业的方案
          • 同意授权转换external_userid事件
          • 转换external_userid
          • 转换客户群成员external_userid
          • 设置迁移完成
        • 四、企业客户微信unionid的升级方案
          • 概述
          • 4.1 升级之后的接口变化
          • 4.2 unionid查询external_userid
      • 代开发应用安全性升级
        • 说明
        • 四、企业客户微信unionid的升级方案
        • 六、成员敏感信息权限升级
        • 七、本次升级对第三方服务商的影响及建议兼容方案
        • FAQ
        • 一、企业corpid的升级方案
          • 1.1 升级前后对比-1.3 历史已授权代开发应用方案
          • 1.4 corpid转换
        • 二、企业员工userid的升级方案
          • 2.1 升级前后对比-2.3 历史已授权代开发应用的方案
          • 2.4 userid的转换
        • 三、企业客户external_userid的升级方案
          • 3.1 升级前后对比-3.2 升级之后的接口变化
          • 3.2.1 转换external_userid
          • 3.2.2 转换客户群成员external_userid
        • 五、代开发应用迁移状态
          • 5.1 代开发应用设置迁移完成
          • 5.2 代开发应用查询迁移状态
      • ID转换接口
        • ID转换接口
        • corpid的转换
        • userid的转换
        • external_userid的转换-转换客户external_userid
        • external_userid的转换-转换客户群成员external_userid
      • unionid与external_userid的关联
        • unionid与external_userid的关联
        • unionid转换为第三方external_userid
        • external_userid查询pending_id
      • 获取服务商凭证
    • 基础
      • 应用授权
        • 企业授权应用
        • 成员授权应用
        • 自建应用代开发
        • 通讯录权限体系
        • 接口调用
          • 获取应用二维码
          • 明文corpid转换为加密corpid
          • 获取第三方应用凭证
          • 获取预授权码
          • 设置授权配置
          • 获取企业永久授权码
          • 获取企业授权信息
          • 获取企业凭证
          • 获取应用的管理员列表
        • 回调接口
          • 概述
          • 共享应用事件回调
          • 授权组织架构权限通知
          • 推送suite_ticket
          • 授权通知事件-授权成功通知
          • 授权通知事件 变更授权通知
          • 授权通知事件 取消授权通知
          • 成员通知事件 新增成员事件
          • 成员通知事件 更新成员事件
          • 成员通知事件 删除成员事件
          • 部门通知事件 新增部门事件
          • 部门通知事件 更新部门事件
          • 部门通知事件 删除部门事件
          • 标签通知事件 标签成员变更事件
          • 重置永久授权码通知
          • 应用管理员变更通知
      • 接口调用许可
        • 概述与指引
        • 订单管理
          • 下单购买帐号
          • 下单续期帐号-创建续期任务
          • 下单续期帐号-提交续期订单
          • 获取订单列表
          • 获取订单详情
          • 获取订单中的帐号列表
          • 取消订单
        • 账号管理
          • 激活帐号-激活帐号
          • 激活帐号-批量激活帐号
          • 获取激活码详情-获取激活码详情
          • 获取激活码详情-批量获取激活码详情
          • 获取企业的帐号列表
          • 获取成员的激活详情
          • 帐号继承
          • 分配激活码给下游企业
        • 应用管理
          • 获取应用的接口许可状态
        • 回调通知
          • 接口许可失效通知
          • 支付成功通知
          • 退款结果通知
          • 自动激活回调通知
        • 自动激活设置
          • 设置企业的许可自动激活状态
          • 查询企业的许可自动激活状态
        • 民生减免条件查询
      • 收银台
        • 接入指引
        • 功能概述
          • 概述
          • 商户号开通
          • 定价策略配置
          • 企业客户购买
          • 订单收款工具
        • 接口调用
          • 获取订单详情
          • 获取订单列表
          • 获取企业永久授权码
          • 获取企业授权信息
          • 延长试用期
        • 回调通知
          • 应用版本变更通知
          • 下单成功通知
          • 改单通知
          • 支付成功通知
          • 退款通知
      • 推广二维码
        • 接入指引
        • 调用接口
          • 获取注册码
          • 查询注册状态
          • 设置授权应用可见范围
          • 设置通讯录同步完成
        • 回调通知
          • 注册完成回调事件
      • 账号ID
        • 概述
        • 安全性升级说明
          • 代开发应用安全性升级
            • 说明
            • 四、企业客户微信unionid的升级方案
            • 6.1. 升级后的变化
            • 七、本次升级对第三方服务商的影响及建议兼容方案
            • FAQ
            • 一、企业corpid的升级方案
              • 1.1 升级前后对比-1.3 历史已授权代开发应用方案
              • 1.4 corpid转换
            • 二、企业员工userid的升级方案
              • 2.1 升级前后对比-2.3 历史已授权代开发应用的方案
              • 2.4 userid的转换
            • 三、企业客户external_userid的升级方案
              • 3.1 升级前后对比-3.2 升级之后的接口变化
              • 3.2.1 转换external_userid
              • 3.2.2 转换客户群成员external_userid
            • 五、代开发应用迁移状态
              • 5.1 代开发应用设置迁移完成
              • 5.2 代开发应用查询迁移状态
        • 企业微信帐号ID安全性全面升级
          • 一、企业corpid的升级方案
            • 1.1 升级前后对比-1.3 历史已授权企业的方案
            • 1.4 corpid转换
          • 二、企业员工userid的升级方案
            • 2.1 升级前后对比-2.3 历史已授权企业的方案
            • 2.4 userid的转换
          • 三、企业客户external_userid的升级方案
            • 3.1 升级前后对比-3.3 历史已授权企业的方案
            • 同意授权转换external_userid事件
            • 转换external_userid
            • 转换客户群成员external_userid
            • 设置迁移完成
          • 四、企业客户微信unionid的升级方案
            • 4.1 升级之后的接口变化
            • FAQ
            • 4.2 unionid查询external_userid
        • ID转换接口
          • unionid与external_userid的关联
            • unionid与external_userid的关联
            • unionid转换为第三方external_userid
            • external_userid查询pending_id
          • corpid的转换
          • userid的转换
          • external_userid的转换-转换客户external_userid
          • external_userid的转换-转换客户群成员external_userid
          • 客户标签ID的转换
          • 微信客服ID的转换
      • 通讯录管理
        • 概述
        • 通讯录展示组件
        • 第三方通讯录编辑授权
        • 成员管理
          • 创建成员
          • 读取成员
          • 更新成员
          • 删除成员
          • 批量删除成员
          • 获取部门成员
          • 获取部门成员详情
          • userid与openid互换-userid转openid
          • userid与openid互换-openid转userid
          • 二次验证
          • 邀请成员
          • 手机号获取userid
          • 邮箱获取userid
          • 获取成员授权列表
          • 查询成员用户是否已授权
          • 获取选人ticket对应的用户
          • 获取成员ID列表
        • 部门管理
          • 获取单个部门详情
          • 创建部门
          • 更新部门
          • 删除部门
          • 获取部门列表
          • 获取子部门ID列表
        • 标签管理
          • 创建标签
          • 更新标签名字
          • 删除标签
          • 获取标签成员
          • 增加标签成员
          • 删除标签成员
          • 获取标签列表
        • 异步批量接口
          • 概述
          • 增量更新成员
          • 全量覆盖成员
          • 全量覆盖部门
          • 获取异步任务结果
        • 异步导出接口
          • 导出任务完成通知
          • 概述
          • 导出成员
          • 导出成员详情
          • 导出部门
          • 导出标签成员
          • 获取导出结果
        • 通讯录回调通知
          • 异步任务完成通知
          • 成员通知事件-更新成员事件
          • 成员通知事件-删除成员事件
          • 部门通知事件-新增部门事件
          • 部门通知事件-更新部门事件
          • 部门通知事件-删除部门事件
          • 标签通知事件
          • 成员通知事件-新增成员事件
        • 通讯录搜索
          • 通讯录搜索-通讯录单个搜索
          • 通讯录搜索-通讯录批量搜索
        • 通讯录ID转译
          • 概述
          • 上传需要转译的文件
          • 异步通讯录id转译
          • 获取异步任务结果
          • 异步任务回调通知
        • 通讯录userid排序
          POST
      • 身份验证
        • 网页授权登录
          • 开始开发
          • 构造网页授权链接
          • 获取访问用户身份
          • 获取访问用户敏感信息
        • 扫码授权登录
          • 接入指引
          • 获取登录用户信息
      • 企业互联
        • 概述
        • 获取下级企业付费版本信息
        • 获取应用共享信息
      • 上下游
        • 获取应用共享信息
      • 消息推送
        • 概述
        • 发送应用模板消息
        • 接收消息与事件
          • 消息格式
          • 事件格式
          • 被动回复消息格式
          • 概述
            • 概述
            • 概述-验证URL有效性
            • 概述-使用接收消息
            • 概述-获取企业微信服务器的ip段
        • 发送应用消息
          • 消息类型
          • 发送应用消息
        • 更新模版卡片消息
        • 撤回应用消息
      • 应用管理
        • 获取应用
          • 获取应用-获取指定的应用详情
          • 获取应用-获取access_token对应的应用列表
        • 设置工作台自定义展示
          • 模版类型数据结构
          • 修改设置工作台自定义开关事件推送
          • 设置工作台自定义展示-设置应用在工作台展示的模版
          • 设置工作台自定义展示-获取应用在工作台展示的模版
          • 设置工作台自定义展示-设置应用在用户工作台展示的数据
      • 素材管理
        • 概述
        • 异步上传临时素材
          • 概述
          • 回调异步任务结果
          • 生成异步上传任务
          • 查询异步任务结果
        • 上传临时素材
        • 上传图片
        • 获取临时素材
        • 获取高清语音素材
      • 电子发票
        • 概述
        • 查询电子发票
        • 更新发票状态
        • 批量更新发票状态
        • 批量查询电子发票
    • 连接微信
      • 客户联系
        • 概述
        • 成员对外信息
        • 企业服务人员管理
          • 获取配置了客户联系功能的成员列表
          • 客户联系「联系我」管理-配置客户联系「联系我」方式
          • 客户联系「联系我」管理-更新企业已配置的「联系我」方式
          • 客户联系「联系我」管理-获取企业已配置的「联系我」方式
          • 客户联系「联系我」管理-获取企业已配置的「联系我」列表
          • 客户联系「联系我」管理-删除企业已配置的「联系我」方式
          • 客户联系「联系我」管理-结束临时会话
        • 客户管理
          • 获取客户列表
          • 获取客户详情
          • 批量获取客户详情
          • 修改客户备注信息
          • 企业主体unionid转换为第三方external_userid
          • 第三方主体unionid转换为第三方external_userid
          • 代开发应用external_userid转换
        • 客户标签管理
          • 管理企业标签
            • 说明
            • 管理企业标签-获取企业标签库
            • 管理企业标签-添加企业客户标签
            • 管理企业标签-编辑企业客户标签
            • 管理企业标签-删除企业客户标签
          • 编辑客户企业标签
        • 在职继承
          • 分配在职成员的客户
          • 查询客户接替状态
          • 分配在职成员的客户群
        • 离职继承
          • 获取待分配的离职成员列表
          • 分配离职成员的客户
          • 查询客户接替状态
          • 分配离职成员的客户群
        • 客户群管理
          • 获取客户群列表
          • 获取客户群详情
          • 客户群opengid转换
        • 联系我与客户入群方式
          • 权限说明
          • 结束语定义
          • 配置客户联系「联系我」方式
          • 获取企业已配置的「联系我」方式
          • 获取企业已配置的「联系我」列表
          • 更新企业已配置的「联系我」方式
          • 删除企业已配置的「联系我」方式
          • 结束临时会话
        • 客户朋友圈
          • 概述
          • 企业发表内容到客户的朋友圈
            • 企业发表内容到客户的朋友圈-创建发表任务
            • 企业发表内容到客户的朋友圈-获取任务创建结果
          • 获取客户朋友圈全部的发表记录
            • 获取客户朋友圈全部的发表记录-获取企业全部的发表列表
            • 获取客户朋友圈全部的发表记录-获取客户朋友圈企业发表的列表
            • 获取客户朋友圈全部的发表记录-获取客户朋友圈发表时选择的可见范围
            • 获取客户朋友圈全部的发表记录-获取客户朋友圈发表后的可见客户列表
            • 获取客户朋友圈全部的发表记录-获取客户朋友圈的互动数据
          • 停止发表企业朋友圈
        • 消息推送
          • 获取企业的全部群发记录
            • 概述
            • 获取企业的全部群发记录-获取群发记录列表
            • 获取企业的全部群发记录-获取群发成员发送任务列表
            • 获取企业的全部群发记录-获取企业群发成员执行结果
          • 创建企业群发
          • 提醒成员群发
          • 停止企业群发
          • 发送新客户欢迎语
          • 入群欢迎语素材管理-添加
          • 入群欢迎语素材管理-编辑
          • 入群欢迎语素材管理-获取
          • 入群欢迎语素材管理-删除
        • 统计管理
          • 获取「联系客户统计」数据
          • 获取「群聊数据统计」数据-按群主聚合的方式
          • 获取「群聊数据统计」数据-按自然日聚合的方式
        • 回调通知
          • 事件格式
        • 管理商品图册
          • 概述
          • 创建商品图册
          • 获取商品图册
          • 删除商品图册
          • 获取商品图册列表
          • 编辑商品图册
        • 管理聊天敏感词
          • 概述
          • 管理聊天敏感词-新建敏感词规则
          • 管理聊天敏感词-获取敏感词规则列表
          • 管理聊天敏感词-获取敏感词规则详情
          • 管理聊天敏感词-修改敏感词规则
          • 管理聊天敏感词 删除敏感词规则
        • 上传附件资源
      • 微信客服
        • 概述
        • 回调通知
        • 客服帐号管理
          • 添加客服帐号
          • 删除客服帐号
          • 修改客服帐号
          • 获取客服帐号列表
          • 获取客服帐号链接
        • 接待人员管理
          • 添加接待人员
          • 删除接待人员
          • 获取接待人员列表
        • 会话分配与消息收发
          • 分配客服会话
            • 概述
            • 分配客服会话-获取会话状态
            • 分配客服会话-变更会话状态
          • 接收消息和事件
            • 概述
            • 消息类型
            • 接收消息和事件-读取消息
          • 发送消息
          • 发送欢迎语等事件响应消息
        • 「升级服务」配置
          • 什么是升级服务
          • 「升级服务」配置-获取配置的专员与客户群
          • 「升级服务」配置-为客户升级为专员服务
          • 「升级服务」配置-为客户升级为客户群服务
          • 「升级服务」配置-为客户取消推荐
        • 其他基础信息获取
          • 获取客户基础信息
          • 获取企业状态信息-获取视频号绑定状态
        • 统计管理
          • 获取「客户数据统计」企业汇总数据
          • 获取「客户数据统计」接待人员明细数据
      • 企业支付
        • 对外收款
          • 概述
          • 获取收款项目的商户单号
          • 获取对外收款记录
      • 家校沟通
        • 概述
        • 接入指引
        • 基础接口
          • 获取「学校通知」二维码
          • 管理「学校通知」的关注模式-设置关注「学校通知」的模式
          • 管理「学校通知」的关注模式-获取关注「学校通知」的模式
          • 发送「学校通知」
          • 获取外部联系人详情
          • 外部联系人openid转换
          • 手机号转外部联系人ID
          • 管理「老师可查看班级」模式-设置「老师可查看班级」的模式
          • 管理「老师可查看班级」模式-获取「老师可查看班级」的模式
          • 获取可使用的家长范围
        • 网页授权登录
          • 开始开发
          • 构造网页授权链接
          • 获取家校访问用户身份
          • 获取访问用户身份
        • 学生与家长管理
          • 创建学生
          • 删除学生
          • 更新学生
          • 批量创建学生
          • 批量删除学生
          • 批量更新学生
          • 创建家长
          • 删除家长
          • 更新家长
          • 批量创建家长
          • 批量删除家长
          • 批量更新家长
          • 读取学生或家长
          • 获取部门成员详情
          • 设置家校通讯录自动同步模式
          • 获取部门家长详情
        • 部门管理
          • 标准年级对照表
          • 创建部门
          • 更新部门
          • 删除部门
          • 获取部门列表
          • 修改自动升年级的配置
        • 家校通讯录变更回调
          • 成员变更事件
          • 部门变更事件
      • 家校应用
        • 上课直播
          • 获取观看直播统计V2
          • 获取未观看直播统计V2
          • 获取老师直播ID列表
          • 获取直播详情
          • 获取观看直播统计
          • 获取未观看直播统计
          • 删除直播回放
        • 班级收款
          • 获取学生付款结果
          • 获取订单详情
    • 办公
      • 邮件
        • 概述
        • 回调通知
        • 发送邮件
          • 发送普通邮件
          • 发送日程邮件
          • 发送会议邮件
        • 获取接收的邮件
          • 获取收件箱邮件列表
          • 获取邮件内容
        • 管理应用邮箱账号
          • 更新应用邮箱帐号
          • 查询应用邮箱帐号
      • 文档
        • 概述
        • 管理文档
          • 新建文档
          • 重命名文档/收集表
          • 删除文档/收集表
          • 获取文档基础信息
          • 分享文档
        • 设置文档权限信息
          • 获取文档权限信息
          • 修改文档查看规则
          • 修改文档通知范围及权限
          • 修改文档安全设置
        • 管理收集表
          • 创建收集表
          • 编辑收集表
          • 收集表的统计信息查询
          • 读取收集表答案
          • 获取收集表信息
        • 回调通知
          • 概述
          • 修改文档成员事件
          • 删除文档事件
          • 收集表完成事件
      • 日程
        • 概述
        • 管理日历
          • 日历接口 创建日历
          • 日历接口 更新日历
          • 日历接口 获取日历详情
          • 日历接口 删除日历
        • 管理日程
          • 更新重复日程
          • 日程接口 创建日程
          • 日程接口更新日程
          • 新增日程参与者
          • 删除日程参与者
          • 日程接口 获取日历下的日程列表
          • 日程接口 获取日程详情
          • 日程接口 取消日程
        • 回调通知
          • 概述
          • 删除日历事件
          • 修改日历事件
          • 修改日程事件
          • 删除日程事件
      • 会议
        • 回调通知
        • 概述
        • 创建预约会议
        • 修改预约会议
        • 取消预约会议
        • 获取成员会议ID列表
        • 获取会议详情
      • 微盘
      • 直播
        • 概述
        • 直播回调事件
        • 创建预约直播
        • 修改预约直播
        • 取消预约直播
        • 删除直播回放
        • 在微信中观看直播或直播回放
        • 获取成员直播ID列表
        • 获取直播详情
        • 获取直播观看明细
        • 获取跳转小程序商城的直播观众信息
      • 打卡
        • 获取员工打卡规则
        • 获取打卡记录数据
        • 获取打卡日报数据
        • 获取打卡月报数据
        • 获取打卡人员排班信息
        • 为打卡人员排班
        • 获取设备打卡数据
      • 审批
        • 审批流程引擎
        • 概述
        • 审批申请状态变化回调通知
        • 复制/更新模板到企业
        • 获取审批模板详情
        • 提交审批申请
        • 批量获取审批单号
        • 获取审批申请详情
        • 获取企业假期管理配置
        • 获取成员假期余额
        • 修改成员假期余额
    • 智慧硬件
      • 概述
      • 接口调用
        • 获取硬件授权结果
        • 获取考勤打卡原始数据
        • 获取温度检测原始数据
        • 获取门禁通行原始数据
        • 读取门禁通行规则
        • 写入门禁通行规则
        • 修改门禁通行规则
        • 删除门禁通行规则
      • 回调通知
        • 设备数据授权变更回调
        • 考勤打卡原始数据回调
        • 门禁通行原始数据回调
        • 体温检测原始数据回调
  • 智慧硬件开发
    • 硬件直连接入
      • 概述
      • 设备接入
        • 接入协议概述
        • 接口调用
          • 获取SecretNo
          • 获取服务器时间
          • 设备注册网络
          • 设备激活
          • 设备心跳
          • 获取最新固件信息
          • 上传日志文件
          • 设备登录二维码
          • 上报设备异常事件
          • 获取设备绑定企业信息
          • 触发云端下发指令
        • 回调通知
          • 企业绑定设备事件
          • 企业解绑设备事件
          • 固件升级指令
          • 上传日志文件指令
          • 重启设备指令
        • 蓝牙相关协议
          • 蓝牙识别及配网协议
          • 蓝牙识别及配网SDK
        • 附录
          • 设备比对版本号流程
          • 设备报警及日志上传流程
      • 考勤/门禁设备
        • 接口调用
          • 全量获取用户数据
          • 增量获取用户数据
          • 检查UserId合法性
          • 获取UserId的变更信息
          • 获取通讯录最新版本号
          • 上传识别特征值
          • 增量获取访客数据
          • 获取访客列表最新版本号
          • 上报考勤打卡/门禁通行记录
          • 上报体温检测记录
          • 异步补录体温检测记录
          • 获取设备自助录入开关状态
          • 获取健康码信息
          • 指纹/人脸多算法版本协议
        • 云端下发指令
          • 通讯录变更事件
          • 成员UserId变更事件
          • 访客列表变更事件
          • 设备自助录入开关变更事件
          • 识别信息录入指令
          • 取消识别信息录入指令
          • 远程开门/扫码开门指令
        • 附录
          • 全量拉取通讯录流程
          • 门禁通行规则语法说明
          • 访客UserId规则说明
          • 员工二维码校验规则
          • 访客二维码校验规则
      • 打印/扫描设备
        • 打印/扫描设备接入指引
        • 接口调用
          • 获取身份验证二维码
          • 获取打印任务列表
          • 下载打印文件
          • 上报打印任务状态
          • 上传打印机扫描文件
          • 上报设备自定义属性
          • 带扩展参数的文件上传协议
        • 回调通知
          • 打印任务推送事件
          • 打印任务删除事件
      • 无线投屏设备
        • 无线投屏设备接入指引
        • Andriod系统设备接入
    • 硬件云端接入
      • 设备接入
        • 接口调用
          • 获取设备型号调用凭证
          • 获取设备授权密钥
          • 获取设备调用凭证
          • 录入设备
          • 获取设备详情
          • 更新设备状态
          • 全量获取设备成员列表
          • 获取设备中指定成员的信息
          • 上报设备固件升级结果
        • 回调通知
          • 回调协议相关
          • 企业绑定设备事件
          • 企业解绑设备事件
          • 通讯录变更事件
          • 固件升级指令
          • 设备型号model_ticket推送事件
          • 查询设备SN合法性事件
      • 考勤/门禁设备
        • 接口调用
          • 上报考勤打卡记录
          • 上报体温检测记录
          • 上报门禁通行记录
          • 上报成员识别信息变化结果
          • 上报远程开门结果
        • 回调通知
          • 识别信息录入指令-录入指纹或人脸指令
          • 识别信息录入指令-取消录入指纹或人脸指令
          • 远程开门指令
          • 识别信息删除回调-删除指纹或人脸指令
      • 打印/扫描设备
        • 接口调用
          • 获取打印身份识别二维码
          • 获取打印任务列表
          • 获取打印文件
          • 上报打印任务状态
          • 上传扫描文件
          • 上报打印机状态变更
          • 返回转码后的打印文件
        • 回调通知
          • 推送打印任务
  • 数据模型
    • 欢迎语素材
      • link
      • miniprogram
      • image
      • file
      • text
      • video
    • 消息类型
      • 文本消息
      • 图片消息
      • 语音消息
      • 文件消息
      • 位置消息
      • 链接消息
      • 名片消息
      • 小程序消息
      • 菜单消息
      • 事件消息
      • 消息发送失败事件
      • 客服人员接待状态变更事件
      • 会话状态变更事件
    • group_msg_list
    • conclusions
    • privilege
  1. 通讯录管理

通讯录展示组件

1. 背景介绍

企业通讯录是企业的重要敏感数据,第三方将不再直接获取到授权企业的通讯录数据(接口将不再返回人名与部门名)。第三方页面若需要展示用户的通讯录信息,可使用如下的 open-data 组件,以提供更加安全良好的体验。

相关概念可以参考微信小程序的 open-data 组件。
常见问题可参考 FAQ

2. 浏览器方案

2.1 环境要求

  • 企业微信APP需 2.8.10 及以上版本

2.2 使用方法

1. 通过企业微信登录应用管理后台

在非微信、企业微信内置浏览器中使用 open-data 时,需要通过企业微信管理端跳转或第三方登录授权进行登录。

需要注意,通过上述方法登录跳转的目标域名要和使用 open-data 的页面域名保持一致。

在开发过程中,我们可以在 open-data 调试页面中查看当前浏览器登录的应用信息。

2. 引入 open-data SDK

在页面上引入以下SDK:

<script src="https://res.wx.qq.com/open/js/jweixin-1.2.0.js" referrerpolicy="origin"></script>
<script src="https://open.work.weixin.qq.com/wwopen/js/jwxwork-1.0.0.js" referrerpolicy="origin"></script>
  • sdk 内容是动态返回的,请严格按照上面的方式引入,不要保存到项目本地后打包引入
  • referrerpolicy 声明为 origin 是为了让 sdk 能够顺利识别关键域名,不能去掉

3. 进行 agentConfig

无论是微信、企业微信的内置浏览器还是第三方浏览器,都需要通过wx.agentConfig登记第三方应用的身份信息。

需要注意,在第三方浏览器中调用 wx.agentConfig 前不需要进行 wx.config。

注意:在企业微信客户端的页面上,进行 agentConfig 的调用,必须要等 wx.config 完成后才调用(即 wx.config 的成功回调)

4. 绑定 open-data 元素

上述步骤完成后,我们就可以通过 WWOpenData.bind 方法对页面上的元素进行绑定,完成后 SDK 将在绑定的元素上渲染出对应的开放数据:

<!-- 注意:这里的 openid 是 userid 和 departmentid 的统称 -->
<ww-open-data type="userName" openid="{{openid}}"></ww-open-data>
<script>
	WWOpenData.bind(document.querySelector('ww-open-data'))
</script>

open-data 元素上的属性请参考[2.5 元素属性](#17172/2.5 元素属性)章节。
在支持 custom elements 的浏览器中,SDK 会自动对 元素进行绑定。

2.3 API 列表

WWOpenData.bind(el: Element)

绑定 open-data 元素,在获取数据后,SDK 将在元素内渲染出对应的开放数据。

WWOpenData.bindAll(nodeList: NodeList | Array)

批量绑定 open-data 元素,参考 WWOpenData.bind。

注意:为了保证在所有环境下表现正常,一旦 open-data 元素的内容发生了变化,必须调用 WWOpenData.bind 接口重新绑定一次

WWOpenData.on(event: string, callback: Function)

为兼容旧版本终端,使用前需要判断函数是否存在

添加事件监听函数,事件列表参考[2.4 事件列表](#17172/2.4 事件列表)。

WWOpenData.off(event: string, callback: Function)

为兼容旧版本终端,使用前需要判断函数是否存在

移除事件监听函数。

WWOpenData.checkSession(params: CheckSessionParams)

为兼容旧版本终端,使用前需要判断函数是否存在

检查登录态信息。

if (WWOpenData.checkSession) {
	WWOpenData.checkSession({
		success() {
			console.log('有登录态')
		},
		fail() {
			console.error('登录态过期')
		}
	})
}

WWOpenData.initCanvas()

启动 canvas 支持功能

WWOpenData.prefetch(params: PrefetchParams)

预加载通讯录数据

if (WWOpenData.prefetch) {
	WWOpenData.prefetch({ items }, (err, data) => {
		if (err) {
			// 错误处理
		}
		// 数据处理
	})
}

注意:出于安全设计和浏览器策略,prefetch 接口必须在 https 的网页下调用,否则会报运行错误

2.4 事件列表

error

当 SDK 获取数据失败时触发。

update

当 open-data 元素渲染内容发生变更时触发。

2.5 元素属性

页面通过 open-data 元素上的属性控制需要渲染的内容:

属性类型必填说明
typestring是开放数据类型
openidstring是数据ID,根据type取值而定
corpidstring否企业ID,用户所属的企业 corpid

假设有“上下游”或“教育局校互联”企业 A 和 B, 开发者需要在页面同时渲染 A和B的通讯录数据,这时可以通过填入特定企业的 corpid,去指定要渲染的企业数据

type 的合法值

值说明
userName用户名称
userAlias用户别名
departmentName部门名称

若 type=userName,此时 openid 对应 userid
若 type=userAlias,此时 openid 对应 userid。如果用户没有别名,将返回传入的openid
若 type=departmentName,此时 openid 对应 departmentid
每 20ms 最多绑定 1000 个 open-data 元素,超出的部分将被忽略
如果用户或部门不合法,将返回传入的openid

2.6 前端框架适配

若页面使用了 vue、react 等前端框架,可在框架提供的钩子函数中调用 WWOpenData.bind 进行绑定:

Vue

<template>
	<ww-open-data :type="type" :openid="openid" />
</template>

<script>
export default {
	props: ['type', 'openid'],
	mounted() {
		WWOpenData.bind(this.$el)
	}
}
</script>

React

import React, { useRef, useLayoutEffect } from 'react'

export default function WWOpenDataCom({ type, openid }) {
	const ref = useRef(null)
	useLayoutEffect(() => {
		WWOpenData.bind(ref.current)
	})
	return <ww-open-data ref={ref} type={type} openid={openid} />
}

2.7 示例代码

<html>
<body>
	<ww-open-data type="userName" openid="{{openid}}"></ww-open-data>
	<script src="//res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>
	<script src="//open.work.weixin.qq.com/wwopen/js/jwxwork-1.0.0.js"></script>
	<script>
		(async () => {
			if (/MicroMessenger/i.test(navigator.userAgent)) {
				await config(configParams)
			}
			await agentConfig(agentConfigParams)
			// 注意: 在企业微信平台下,只有 agentConfig 成功回调后,WWOpenData 才会注入到 window 对象上面
			WWOpenData.bindAll(document.querySelectorAll('ww-open-data'))
		})()
		function config(config) {
			return new Promise((resolve, reject) => {
				wx.config(config)
				wx.ready(resolve)
				wx.error(reject)
			})
		}
		function agentConfig(config) {
			return new Promise((success, fail) => {
				wx.agentConfig({ ...config, success, fail })
			})
		}
	</script>
</body>
</html>

更加完整的示例程序,可以参考 open-data 控件 demo。

3. 小程序方案

3.1 环境要求

  • 企业微信APP需 2.8.9 及以上版本
  • 微信上小程序基础库版本需 1.9.6 及以上版本
  • 开发者工具中不要在企业微信小程序模式下运行插件

注意:当前小程序通讯录展示插件不支持显示头像

3.2 使用方法

(1) 开发者在小程序管理后台申请使用插件,添加路径:设置 ->第三方服务 -> 插件管理 -> 添加插件,搜索并添加插件ID: wx5917c8c26f85c588,无需审核确认。
(2) 开发者在小程序app.json 文件中添加对插件的引用

"plugins": {
	"contactPlugin": {
		"version": "2.1.0",
		"provider": "wx5917c8c26f85c588"
	}
}

(3) 开发者在具体引用插件的页面文件json文件中,添加对组件的引用,例如:

"usingComponents": {
	"ww-open-data":"plugin://contactPlugin/ww-open-data"
}

(4) 在 wxml 中调用 ww-open-data 组件展示用户信息:

<ww-open-data
  type="{{type}}"
  corpid="{{corpid}}"
  openid="{{openid}}"
  bindupdate="onDataUpdate"
/>

参数说明:

属性类型必填说明最低版本
typestring是开放数据类型1.0.0
corpidstring是用户所属的企业corpid1.0.0
openidstring是数据ID,根据type取值而定1.0.0
bindupdateeventhandle否当组件展示的数据发生变更时触发,event.detail = { type, corpid, openid, hasData }2.1.0

type 与 openid 属性参考[2.5 元素属性](#17172/2.4 元素属性)
假设有上下游企业 A 和 B, 开发者需要在页面同时渲染 A和B的通讯录数据,这时可以通过填入特定企业的 corpid,去指定要渲染的企业数据

3.3 开发调试

在开发者工具开发调试,需要用企业微信扫码运行时,需要在“添加编译模式”里的启动参数添加如下参数:debug_extinfo=true&debug_plugin=true,才能正常调起授权登录。添加方法请参考下图:

imgimg

3.4 示例程序

开发者可参考 open-data 小程序 demo。

4. canvas 支持方案

4.1 作用

  • 支持三方应用在 canvas 中安全渲染通讯录数据
  • 支持 echarts、antv g2 等第三方图形库,在 canvas 渲染模式下,正确渲染通讯录数据

4.2 使用方式

1 . 在完成了 WWOpenData 的初始化后,调用 initCanvas 方法

if (WWOpenData.initCanvas) {
	WWOpenData.initCanvas()
}

2 . 调用 WWOpenData 的 prefetch 方法,将需要在图形显示的名称,进行预获取。可以参考以下代码

const result = await new Promise((resolve, reject) => {
	WWOpenData.prefetch({ items }, (err, data) => {
		if (err) {
			return reject(err)
		}
		resolve(data)
	})
})

其中,items 和 result 的格式分别是:

items: [
	{
		type: string, // userType
		id: string, // openid
		corpid: string, // corpid (非必须)
	}
]

result: [
	{
		type: string,
		id: string,
		data: string, // 重要,这里的数据需要传入到 canvas 图形库中
	}
]

3 . 到了这一步,已经完备了 canvas 展示通讯录数据的将, result 返回的 data,开发者可以理解成是 加密过的通讯录数据,接下来,开发者只需要把这些加密过的通讯录数据,当成正常的数据,放到 canvas 的接口 或者 第三方图形库的接口上,进行渲染即可。

4 . 一般情况下,为了避免页面受到 xss 攻击时,泄漏图片数据,默认情况下,渲染过通讯录信息的 canvas,是禁止使用 toDataUrl 导出图片的。如果确实有这样的需求,服务商可以在渲染 canvas 前,调用 WWOpenData.enableCanvasSharing 这个 api,调用后,渲染出来的 canvas 就能通过 toDataUrl 导出图片。与之相对,WWOpenData.disableCanvasSharing 这个 api 可以重新禁止 canvas 导出图片。

5. 发送应用消息支持id转译

应用在下发消息时,可以在内容中以模板参数语法包含id,企业微信在下发时会将其替换为成员名或部门名,目前支持文本/文本卡片/图文/图文(mpnews)这四种消息类型,参数使用说明具体参见“发送应用消息”,注意需要在原接口参数上添加 enable_id_trans 字段且置为1,才能开启转译.

6. 人名或部门名搜索方案

通过通讯录搜索接口,可以根据名字或拼音搜索出对应的userid或部门id。

7. 包含人名部门名的文件导出方案

先将文件通过“上传需要转译的文件”接口上传到企业微信服务端,接着调用“异步通讯录id转译”接口提交转译任务,然后通过“获取异步任务结果”获取最终下载文件的url,注意该url仅能在有用户登录态的浏览器打开以下载文件,详情参见“通讯录ID转译”。

8. 通讯录用户排序方案

通过通讯录userid排序,可以根据姓名拼音升序或者降序排列。

FAQ

  1. 页面使用了 iframe,iframe 内找不到 WWOpenData
    解决方法:针对应用页面使用了 iframe 的情况,可以通过 window.parent 的方式往最外层的 webview 访问 WWOpenData 对象。

  2. agentConfig 签名一直报错
    注意点:agentConfig 的签名参数 和 wx.config 是不一样的,参考文档

  3. 第三方浏览器,其他浏览器工作正常,safari 工作不正常
    解答:由于 Safari 浏览器对 cors 策略的处理和其他浏览器不一样,在第三方浏览器上,请务必按照文档完成 wx.agentConfig 的处理

  4. 关于 jWeixin sdk 版本的处理,请注意:在企业微信上,必须引入的是 1.2.0 版本的 jWeixin sdk,在微信 或者 其他第三方浏览器,可以引入其他版本的 jWeixin sdk

  5. 单页面应用,在 windows 客户端可以渲染,但是在 iOS 客户端不能渲染
    解答:由于目前 windows 客户端 和 iOS 存在差异,为了保证各个端运行正确,请严格保证如下标准:如果单页面应用使用了 browser history 作为路由,请保证每次 url 变更后,都正常完成 wx.config 和 wx.agentConfig 初始化。

  6. 页面在浏览器,在 iOS,Mac,Android 上面的企业微信都表现正常,但是在 windows 企业微信下,会偶发不能渲染通讯录控件内容
    解答:由于 企业微信的 windows 客户端浏览器内核不支持 customElements,每次更新了 open-data 元素后,需要用 bind 或者 bindAll 接口对目标元素进行一次更新,这样才能保证 open-data 元素实时渲染正确的数据。遇到上面的情况,请检查一下页面代码,看看有没有可能出现时序问题:先执行了 bind,然后才渲染出对应的 open-data 元素

  7. 如何自定义显示内容,比如表单需要显示“提交人+提交日期+业务类型”?

    将需要替换通讯录名称的文本替换为ww-open-data标签引用,其它保留不变。比如,

    <ww-open-data type="userName" openid="{{openid}}"></ww-open-data>+提交日期+业务类型
    
  8. 通讯录展示组件,是否可以一次性显示多个名称?
    组件的每个ww-open-data标签引用对应到一个通讯录名称,显示多个名称,则引用多个ww-open-data。比如,显示完整的部门路径,只需要将路径的部门id依次引用即可。

  9. 第三方管理端,如何实现成员搜索?
    调用接口:通讯录搜索,传入搜索的关键词,获取搜索结果的userid/departmentid。
    再调用通讯录展示组件,显示出搜索的成员名称/部门名称。

  10. 如何实现搜索后的结果按拼音排序?
    调用接口:通讯录userid排序,支持指定的用户列表按拼音升序/降序,返回的结果为排序后的列表。

  11. 第三方管理端,导入业务数据文件(如打卡记录),包括了通讯录名称,如何识别?
    如果业务数据文件中记录中有唯一字段标识,则可以直接对应关联;
    如果通过通讯录名称关联用户,调用 通讯录搜索 接口,获取搜索结果的userid/departmentid,对应关联到用户

  12. 第三方管理端,支持导出业务数据文件(如打卡列表),需要包含通讯录名称,如何实现?
    解决方案参考:通讯录ID转译。以模板参数填入数据文件中,并上传至企业微信后台,数据文件中的模板参数就会替换为通讯录名称,并获取到一个文件访问地址。
    该文件访问地址,需要用户通过企业微信登录至第三方管理端,才可下载。

  13. 页面请求数据报错403
    img
    通常是由于用户未登录至第三方业务页面导致,可以访问 open-data 调试页面 查看登录信息。
    注意,在单点登录的场景(包括有扫码登录,应用安装完成跳转,以及从企业微信Web管理端业务跳转),在指定的redirect_uri的域名,才会有登录用户身份。
    比如,扫码登录后跳转到域名A,在域名B下使用组件,是会报错403的。

  14. 已删除的成员或部门,是否能通过通讯录组件展示名字
    可以。对于同一个userid或部门ID,企业微信仅展示最后一个删除的成员或部门的名字;删除之后再重新添加相同的userid或部门ID,则只展示新成员或新部门的名字。(注:部门名仅支持展示2021年10月1号之后删除的部门)

修改于 2025-03-26 09:11:32
上一页
概述
下一页
第三方通讯录编辑授权
Built with