{"id":38734024,"url":"https://github.com/ghaoo/wxwork","last_synced_at":"2026-01-17T11:29:00.910Z","repository":{"id":57505198,"uuid":"231496940","full_name":"ghaoo/wxwork","owner":"ghaoo","description":"企业微信SDK","archived":false,"fork":false,"pushed_at":"2022-06-24T00:02:10.000Z","size":78,"stargazers_count":2,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-06-22T18:06:04.351Z","etag":null,"topics":["go","sdk","wxwork"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ghaoo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-01-03T02:30:46.000Z","updated_at":"2023-02-15T01:43:45.000Z","dependencies_parsed_at":"2022-08-22T08:50:27.161Z","dependency_job_id":null,"html_url":"https://github.com/ghaoo/wxwork","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ghaoo/wxwork","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ghaoo%2Fwxwork","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ghaoo%2Fwxwork/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ghaoo%2Fwxwork/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ghaoo%2Fwxwork/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ghaoo","download_url":"https://codeload.github.com/ghaoo/wxwork/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ghaoo%2Fwxwork/sbom","scorecard":{"id":425555,"data":{"date":"2025-08-11","repo":{"name":"github.com/ghaoo/wxwork","commit":"0aec128cf24f9f35d143c42b89f4cacd558cc1ee"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.9,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":9,"reason":"1 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GO-2022-0493 / GHSA-p782-xgp4-8hr8"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-19T02:09:47.723Z","repository_id":57505198,"created_at":"2025-08-19T02:09:47.723Z","updated_at":"2025-08-19T02:09:47.723Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28507593,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T10:25:30.148Z","status":"ssl_error","status_checked_at":"2026-01-17T10:25:29.718Z","response_time":85,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["go","sdk","wxwork"],"created_at":"2026-01-17T11:29:00.812Z","updated_at":"2026-01-17T11:29:00.889Z","avatar_url":"https://github.com/ghaoo.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WXWork [![GoDoc](https://godoc.org/github.com/ghaoo/wxwork?status.svg)](https://godoc.org/github.com/ghaoo/wxwork) [![Go Report Card](https://goreportcard.com/badge/github.com/ghaoo/wxwork)](https://goreportcard.com/report/github.com/ghaoo/wxwork)\n企业微信 SDK，文档见 [godoc](https://godoc.org/github.com/ghaoo/wxwork)\n\n## TODO\n\u003cdetails\u003e\n\u003csummary\u003e通讯录管理\u003c/summary\u003e\n\n* [x] 成员管理\n    - [x] 创建成员\n    - [x] 读取成员\n    - [x] 更新成员\n    - [x] 删除成员\n    - [x] 获取部门成员\n    - [x] 获取部门成员详情\n    - [x] userid与openid互换\n    - [x] 二次验证\n    - [x] 邀请成员\n    - [x] 获取加入企业二维码\n    - [x] 获取企业活跃成员数\n* [x] 部门管理\n    - [x] 创建部门\n    - [x] 更新部门\n    - [x] 删除部门\n    - [x] 获取部门列表\n* [x] 标签管理\n    - [x] 创建标签\n    - [x] 更新标签名字\n    - [x] 删除标签\n    - [x] 获取标签成员\n    - [x] 增加标签成员\n    - [x] 删除标签成员\n    - [x] 获取标签列表\n* [x] 异步批量接口\n    - [x] 增量更新成员\n    - [x] 全量覆盖成员\n    - [x] 全量覆盖部门\n    - [x] 获取异步任务结果\n* [ ] 通讯录回调通知\n    - [x] 成员变更通知\n    - [ ] 部门变更通知\n    - [ ] 标签变更通知\n    - [x] 异步任务完成通知\n        \n\u003c/details\u003e\n\n\n\u003cdetails\u003e\n\u003csummary\u003e客户联系\u003c/summary\u003e\n\n* [ ] 企业服务人员管理\n  * [x] 获取配置了客户联系功能的成员列表\n  * [x] 客户联系「联系我」管理\n    - [x] 配置客户联系「联系我」方式\n    - [x] 获取企业已配置的「联系我」方式\n    - [x] 获取企业已配置的「联系我」列表\n    - [x] 更新企业已配置的「联系我」方式\n    - [x] 删除企业已配置的「联系我」方式\n    - [x] 结束临时会话\n* [ ] 客户管理\n  * [ ] 获取客户列表\n  * [ ] 获取客户详情\n  * [ ] 批量获取客户详情\n  * [ ] 修改客户备注信息\n  * [ ] 客户联系规则组管理\n    - [ ] 获取规则组列表\n    - [ ] 获取规则组详情\n    - [ ] 获取规则组管理范围\n    - [ ] 创建新的规则组\n    - [ ] 编辑规则组及其管理范围\n    - [ ] 删除规则组\n* [ ] 客户标签管理\n  * [x] 管理企业标签\n    - [x] 获取企业标签库\n    - [x] 添加企业客户标签\n    - [x] 编辑企业客户标签\n    - [x] 删除企业客户标签\n  * [ ] 管理企业规则组下的客户标签\n    - [ ] 获取指定规则组下的企业客户标签\n    - [ ] 为指定规则组创建企业客户标签\n    - [ ] 编辑指定规则组下的企业客户标签\n    - [ ] 删除指定规则组下的企业客户标签\n  - [ ] 编辑客户企业标签\n* [ ] 在职继承\n  - [ ] 分配在职成员的客户\n  - [ ] 查询客户接替状态\n* [ ] 离职继承\n  - [ ] 获取待分配的离职成员列表\n  - [ ] 分配离职成员的客户\n  - [ ] 查询客户接替状态\n  - [ ] 分配离职成员的客户群\n* [ ] 客户群管理\n  - [ ] 获取客户群列表\n  - [ ] 获取客户群详情\n  - [ ] 客户群opengid转换\n* [ ] 客户朋友圈\n  * [ ] 获取客户朋友圈全部的发表记录\n    - [ ] 获取企业全部的发表列表\n    - [ ] 获取客户朋友圈企业发表的列表\n    - [ ] 获取客户朋友圈发表时选择的可见范围\n    - [ ] 获取客户朋友圈发表后的可见客户列表\n    - [ ] 获取客户朋友圈的互动数据\n  * [ ] 客户朋友圈规则组管理\n    - [ ] 获取规则组列表\n    - [ ] 获取规则组详情\n    - [ ] 获取规则组管理范围\n    - [ ] 创建新的规则组\n    - [ ] 编辑规则组及其管理范围\n    - [ ] 删除规则组\n* [ ] 消息推送\n  * [ ] 创建企业群发\n  * [ ] 获取企业的全部群发记录\n    - [ ] 获取群发记录列表\n    - [ ] 获取群发成员发送任务列表\n    - [ ] 获取企业群发成员执行结果\n  * [ ] 发送新客户欢迎语\n  * [ ] 入群欢迎语素材管理\n    - [ ] 添加入群欢迎语素材\n    - [ ] 编辑入群欢迎语素材\n    - [ ] 获取入群欢迎语素材\n    - [ ] 删除入群欢迎语素材\n* [ ] 统计管理\n  - [ ] 获取「联系客户统计」数据\n  - [ ] 获取「群聊数据统计」数据\n* [ ] 变更回调\n    \n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e身份验证\u003c/summary\u003e\n\n* [ ] 网页授权登录\n    - [ ] 构造网页授权链接\n    - [ ] 获取访问用户身份\n* [ ] 扫码授权登录\n    - [ ] 构造扫码登录链接\n    - [ ] 获取访问用户身份\n        \n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e应用管理\u003c/summary\u003e\n\n* [ ] 获取应用\n  - [ ] 获取指定的应用详情\n  - [ ] 获取access_token对应的应用列表\n* [ ] 设置应用\n* [ ] 自定义菜单\n    - [ ] 创建菜单\n    - [ ] 获取菜单\n    - [ ] 删除菜单\n* [ ] 设置工作台自定义展示\n  - [ ] 设置应用在工作台展示的模版\n  - [ ] 获取应用在工作台展示的模版\n  - [ ] 设置应用在用户工作台展示的数据\n        \n\u003c/details\u003e\n\n\n\u003cdetails\u003e\n\u003csummary\u003e消息推送\u003c/summary\u003e\n\n* [x] 发送应用消息\n* [x] 更新模版卡片消息\n* [ ] 撤回应用消息\n* [x] 接收消息与事件\n* [ ] 获取企业微信服务器的ip段\n* [x] 发消息到群聊会话\n    - [x] 创建群聊会话\n    - [x] 修改群聊会话\n    - [x] 获取群聊会话\n    - [x] 应用推送消息\n* [ ] 互联企业消息推送\n    - [ ] 发送应用消息\n    - [ ] 接收消息与事件\n* [ ] 家校消息推送\n  - [ ] 发送「学校通知」\n        \n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e素材管理\u003c/summary\u003e\n\n* [ ] 发送应用消息\n    - [x] 上传临时素材\n    - [x] 上传图片\n    - [ ] 获取临时素材\n    - [ ] 获取高清语音素材\n        \n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eOA数据接口\u003c/summary\u003e\n\n* [ ] 企业微信打卡应用\n    - [ ] 获取打卡数据\n    - [ ] 获取打卡规则\n* [ ] 企业微信审批应用\n    - [ ] 获取审批模板详情\n    - [ ] 提交审批申请\n    - [ ] 审批申请状态变化回调通知\n    - [ ] 批量获取审批单号\n    - [ ] 获取审批申请详情\n* [ ] 企业微信公费电话\n    - [ ] 获取公费电话拨打记录\n        \n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e日程接口\u003c/summary\u003e\n\n- [ ] 创建日程\n- [ ] 更新日程\n- [ ] 取消日程\n- [ ] 获取日程\n    \n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e电子发票\u003c/summary\u003e\n\n- [ ] 查询电子发票\n- [ ] 更新发票状态\n- [ ] 批量更新发票状态\n- [ ] 批量查询电子发票\n    \n\u003c/details\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fghaoo%2Fwxwork","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fghaoo%2Fwxwork","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fghaoo%2Fwxwork/lists"}