import jmespath import requests from requests import post from wechat_token.token工具包 import sixToken class 通讯录管理: """注释""" def 成员扩展属性(self): """ """ pass """ 成员自定义属性需要先在WEB管理端添加,见扩展属性添加方法,否则忽略未知属性的赋值。 • 新增/更新:仅通讯录同步助手或第三方通讯录应用可以进行 • 查询:代开发自建应用需要管理员授权才返回;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段 """ def 创建成员(self): """ """ pass def 读取成员(self): """ """ pass """ 应用只能获取可见范围内的成员信息,且每种应用获取的字段有所不同,在返回结果说明中会逐个说明。企业通讯录安全特别重要,企业微信将持续升级加固通讯录接口的安全机制,以下是关键的变更点: 从2022年6月20号20点开始,除通讯录同步以外的基础应用(如客户联系、微信客服、会话存档、日程等),以及新创建的自建应用与代开发应用,调用该接口时,不再返回以下字段:头像、性别、手机、邮箱、企业邮箱、员工个人二维码、地址,应用需要通过oauth2手工授权的方式获取管理员与员工本人授权的字段。 【重要】从2022年8月15日10点开始,“企业管理后台 - 管理工具 - 通讯录同步”的新增IP将不能再调用此接口,企业可通过「获取成员ID列表」和「获取部门ID列表」接口获取userid和部门ID列表。查看调整详情。 """ wecom_phone_token = sixToken.get_weom_phone_token() print(wecom_phone_token) wecom_token = sixToken.get_wecom_token() uri = f"https://qyapi.weixin.qq.com/cgi-bin/user/get" data = requests.get(url=uri, params={"access_token": wecom_phone_token, "userid": "HuDie_1"}) print(data.json()) def 更新成员(self): """ """ pass def 删除成员(self): """ """ pass def 获取成员ID列表(self): """ """ pass """ 获取企业成员的userid与对应的部门ID列表,预计于2022年8月8号发布。若需要获取其他字段,参见「适配建议」。 请求地址:https://qyapi.weixin.qq.com/cgi-bin/user/list_id?access_token=ACCESS_TOKEN """ wecom_phone_token = sixToken.get_weom_phone_token() print(wecom_phone_token) uri = f"https://qyapi.weixin.qq.com/cgi-bin/user/list_id" data = requests.post(url=uri, params={"access_token": wecom_phone_token}) print(data.json()) def unionid与external_userid的关联(self): """本接口自建应用是不能调用的,所以,本接口无效,仅限了服务商代开发或""" pass wecom_token = sixToken.get_wecom_token() uri = f"https://qyapi.weixin.qq.com/cgi-bin/idconvert/unionid_to_external_userid?access_token={wecom_token}" post_data = { "unionid": "oy4Jw6A1T3WkKOOhMxcbQTDSM8rs", "openid": "o6oV61xoMYAFNpi4RpVjn3BFGB1U", "subject_type": 0 } data = post(url=uri, json=post_data).json() print(data) @classmethod def userid转openid(cls): wecom_phone_token = sixToken.get_weom_phone_token() uri = f"https://qyapi.weixin.qq.com/cgi-bin/user/convert_to_openid" data = requests.post(url=uri, params={"access_token": wecom_phone_token}, json={"userid": "YuanBao1975"}) print(data.json()) if __name__ == '__main__': pass 通讯录管理().获取成员ID列表() # 通讯录管理.userid转openid() # 通讯录管理().unionid与external_userid的关联() # 通讯录管理().读取成员()