diff --git a/_docs/API接口清单-按模块.md b/_docs/API接口清单-按模块.md index 2ea4471..b9ef26a 100644 --- a/_docs/API接口清单-按模块.md +++ b/_docs/API接口清单-按模块.md @@ -15,284 +15,3554 @@ ## 1. 登录(9 个接口) -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/login/A16Login` | 数据登录 | 定制版 | -| 2 | `GET` | `/login/CheckLoginStatus` | 检测扫码状态 | 初级版 | -| 3 | `POST` | `/login/DeviceLogin` | 62账号密码登录 | 定制版 | -| 4 | `POST` | `/login/GetLoginQrCodeNewDirect` | 获取登录二维码-直登(异地IP必须用代理! socks5://username:password@ipv4:port) | 初级版 | -| 5 | `GET` | `/login/GetLoginStatus` | 获取在线状态 | 初级版 | -| 6 | `GET` | `/login/LogOut` | 退出登录 | 初级版 | -| 7 | `POST` | `/login/VerifyCode` | 验证码验证(输入iPad登录验证码) | 定制版 | -| 8 | `POST` | `/login/VerifyCodeSlide` | 过mac滑块验证 | 定制版 | -| 9 | `POST` | `/login/WakeUpLogin` | 唤醒登录(只限扫码登录) | 初级版 | +### 1.1 `POST /login/A16Login` - 数据登录 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DeviceIdLoginModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `DeviceInfo` | `DeviceInfo` | 设备信息 | +| `LoginData` | `string` | 62 数据/A16 数据 | +| `Password` | `string` | 微信密码 | +| `Proxy` | `string` | socks代理,例如:socks5://username:password@ipv4:port | +| `Ticket` | `string` | SMS短信验证码 | +| `Type` | `integer(int)` | - | +| `UserName` | `string` | 手机号 | + +--- + +### 1.2 `GET /login/CheckLoginStatus` - 检测扫码状态 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 1.3 `POST /login/DeviceLogin` - 62账号密码登录 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DeviceIdLoginModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `DeviceInfo` | `DeviceInfo` | 设备信息 | +| `LoginData` | `string` | 62 数据/A16 数据 | +| `Password` | `string` | 微信密码 | +| `Proxy` | `string` | socks代理,例如:socks5://username:password@ipv4:port | +| `Ticket` | `string` | SMS短信验证码 | +| `Type` | `integer(int)` | - | +| `UserName` | `string` | 手机号 | + +--- + +### 1.4 `POST /login/GetLoginQrCodeNewDirect` - 获取登录二维码-直登(异地IP必须用代理! socks5://username:password@ipv4:port) + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetLoginQrCodeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Check` | `boolean` | 修改代理时(SetProxy接口) 是否发送检测代理请求(可能导致请求超时) | +| `IpadOrmac` | `string` | - | +| `Proxy` | `string` | socks代理,例如:socks5://username:password@ipv4:port | + +--- + +### 1.5 `GET /login/GetLoginStatus` - 获取在线状态 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 1.6 `GET /login/LogOut` - 退出登录 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 1.7 `POST /login/VerifyCode` - 验证码验证(输入iPad登录验证码) + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (VerifyCodeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `code` | `string` | 验证码 | +| `data62` | `string` | 验证码 | +| `ticket` | `string` | 验证码 | + +--- + +### 1.8 `POST /login/VerifyCodeSlide` - 过mac滑块验证 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SlideTicketModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `data62` | `string` | 验证码 | +| `randstr` | `bingding:"required"`` | - | +| `slideticket` | `string` | - | +| `ticket` | `string` | 验证码 | + +--- + +### 1.9 `POST /login/WakeUpLogin` - 唤醒登录(只限扫码登录) + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetLoginQrCodeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Check` | `boolean` | 修改代理时(SetProxy接口) 是否发送检测代理请求(可能导致请求超时) | +| `IpadOrmac` | `string` | - | +| `Proxy` | `string` | socks代理,例如:socks5://username:password@ipv4:port | + +--- ## 2. 用户(26 个接口) -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/user/ChangePwd` | 更改密码 | 高级版 | -| 2 | `GET` | `/user/GetAdminKeyword` | 获取管理员关键词配置 | 初级版 | -| 3 | `GET` | `/user/GetInviteKeyword` | 获取关键词邀请入群配置 | 初级版 | -| 4 | `GET` | `/user/GetKeywordReply` | 获取关键词自动回复配置 | 初级版 | -| 5 | `GET` | `/user/GetKickKeyword` | 获取踢人关键词配置 | 初级版 | -| 6 | `POST` | `/user/GetMyQrCode` | 获取我的二维码 | 初级版 | -| 7 | `GET` | `/user/GetProfile` | 获取个人资料信息 | 初级版 | -| 8 | `GET` | `/user/GetWelcome` | 获取欢迎词配置 | 初级版 | -| 9 | `POST` | `/user/ModifyRemark` | 修改备注 | 初级版 | -| 10 | `POST` | `/user/ModifyUserInfo` | 修改资料 | 定制版 | -| 11 | `POST` | `/user/ResetGender` | 重置性别 | 定制版 | -| 12 | `POST` | `/user/SetAdminKeyword` | 设置管理员关键词配置 | 初级版 | -| 13 | `POST` | `/user/SetFunctionSwitch` | 设置添加我的方式 | 高级版 | -| 14 | `POST` | `/user/SetInviteKeyword` | 设置关键词邀请入群配置 | 初级版 | -| 15 | `POST` | `/user/SetKeywordReply` | 设置关键词自动回复 | 初级版 | -| 16 | `POST` | `/user/SetKickKeyword` | 设置踢人关键词配置 | 初级版 | -| 17 | `POST` | `/user/SetNickName` | 设置昵称 | 初级版 | -| 18 | `POST` | `/user/SetProxy` | 修改Socks5代理 socks5://username:password@ipv4: | 定制版 | -| 19 | `POST` | `/user/SetSendPat` | 设置拍一拍名称 | 定制版 | -| 20 | `POST` | `/user/SetSexDq` | 修改性别 | 定制版 | -| 21 | `POST` | `/user/SetSignature` | 修改签名 | 初级版 | -| 22 | `POST` | `/user/SetWechat` | 设置微信号 | 定制版 | -| 23 | `POST` | `/user/SetWelcome` | 设置欢迎词配置 | 初级版 | -| 24 | `POST` | `/user/UpdateAutoPass` | 修改加好友需要验证属性 | 定制版 | -| 25 | `POST` | `/user/UpdateNickName` | 修改名称 | 初级版 | -| 26 | `POST` | `/user/UploadHeadImage` | 上传头像 | 初级版 | +### 2.1 `POST /user/ChangePwd` - 更改密码 -## 3. 标签(5 个接口) +- 套餐:**高级版** -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/label/AddContactLabel` | 添加列表 | 初级版 | -| 2 | `POST` | `/label/DelContactLabel` | 删除标签 | 初级版 | -| 3 | `GET` | `/label/GetContactLabelList` | 获取标签列表 | 初级版 | -| 4 | `POST` | `/label/GetWXFriendListByLabel` | 获取标签下所有好友 | 初级版 | -| 5 | `POST` | `/label/ModifyLabel` | 修改标签 | 初级版 | +**Query 参数** -## 4. 消息(24 个接口) +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/message/AddMessageMgr` | 添加要发送的文本消息进入管理器 | 高级版 | -| 2 | `POST` | `/message/CdnUploadVideo` | 上传视频 | 高级版 | -| 3 | `POST` | `/message/DownloadEmojiGif` | 下载表情 | 高级版 | -| 4 | `POST` | `/message/ForwardEmoji` | 转发表情,包含动图 | 初级版 | -| 5 | `POST` | `/message/ForwardImageMessage` | 转发图片 | 初级版 | -| 6 | `POST` | `/message/ForwardVideoMessage` | 转发视频 | 初级版 | -| 7 | `POST` | `/message/GetMsgBigImg` | 获取图片(高清图片下载) | 高级版 | -| 8 | `POST` | `/message/GetMsgVideo` | 获取视频(视频数据下载) | 高级版 | -| 9 | `POST` | `/message/GetMsgVoice` | 下载语音消息 | 高级版 | -| 10 | `POST` | `/message/GroupMassMsgImage` | 群发图片 | 高级版 | -| 11 | `POST` | `/message/GroupMassMsgText` | 群发接口 | 高级版 | -| 12 | `POST` | `/message/HttpSyncMsg` | 同步消息, HTTP-轮询方式 | 初级版 | -| 13 | `POST` | `/message/NewSyncHistoryMessage` | 同步历史消息 | 高级版 | -| 14 | `POST` | `/message/RevokeMsg` | 撤销消息 | 初级版 | -| 15 | `POST` | `/message/RevokeMsgNew` | 撤回消息(New) | 初级版 | -| 16 | `POST` | `/message/SendAppMessage` | 发送App消息 | 高级版 | -| 17 | `POST` | `/message/SendCdnDownload` | 下载 请求 | 高级版 | -| 18 | `POST` | `/message/SendEmojiMessage` | 发送表情 | 高级版 | -| 19 | `POST` | `/message/SendImageMessage` | 发送图片消息 | 初级版 | -| 20 | `POST` | `/message/SendImageNewMessage` | 发送图片消息(New) | 高级版 | -| 21 | `POST` | `/message/SendTextMessage` | 发送文本消息 | 初级版 | -| 22 | `POST` | `/message/SendVoice` | 发送语音 | 初级版 | -| 23 | `POST` | `/message/ShareCardMessage` | 分享名片消息 | 高级版 | -| 24 | `POST` | `/message/UploadImageToCDN` | 纯CDN图片上传接口 | 高级版 | +**请求体 (SendChangePwdRequestModel)** -## 5. 消息回调(4 个接口) +| 字段名 | 类型 | 说明 | +|---|---|---| +| `newPass` | `string` | - | +| `oldPass` | `string` | 确保json标签是`oldPass` | +| `opCode` | `integer(uint32)` | - | -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `GET` | `/message/DeleteCallback` | 删除消息回调配置 | 高级版 | -| 2 | `GET` | `/message/GetCallback` | 获取消息回调配置 | 高级版 | -| 3 | `POST` | `/message/SetCallback` | 设置消息回调 | 高级版 | -| 4 | `GET` | `/message/TestCallback` | 测试消息回调配置 | 高级版 | +--- -## 6. 群管理(20 个接口) +### 2.2 `GET /user/GetAdminKeyword` - 获取管理员关键词配置 -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/group/AddChatRoomMembers` | 添加群成员 | 初级版 | -| 2 | `POST` | `/group/AddChatroomAdmin` | 添加群管理员 | 高级版 | -| 3 | `POST` | `/group/CreateChatRoom` | 创建群请求 | 初级版 | -| 4 | `POST` | `/group/DelChatroomAdmin` | 删除群管理员 | 高级版 | -| 5 | `POST` | `/group/GetChatRoomInfo` | 获取群详情 | 初级版 | -| 6 | `POST` | `/group/GetChatroomMemberDetail` | 获取群成员详细 | 初级版 | -| 7 | `POST` | `/group/GetChatroomQrCode` | 获取群二维码 | 初级版 | -| 8 | `POST` | `/group/InviteChatroomMembers` | 邀请群成员 | 初级版 | -| 9 | `POST` | `/group/MoveToContract` | 获取群聊 | 高级版 | -| 10 | `POST` | `/group/QuitChatroom` | 退出群聊 | 初级版 | -| 11 | `POST` | `/group/ScanIntoUrlGroup` | 扫码入群 | 高级版 | -| 12 | `POST` | `/group/SendDelDelChatRoomMember` | 删除群成员 | 高级版 | -| 13 | `POST` | `/group/SendPat` | 群拍一拍功能 | 高级版 | -| 14 | `POST` | `/group/SendTransferGroupOwner` | 转让群 | 高级版 | -| 15 | `POST` | `/group/SetChatroomAccessVerify` | 设置群聊邀请开关 | 高级版 | -| 16 | `POST` | `/group/SetChatroomAnnouncement` | 设置群公告 | 初级版 | -| 17 | `POST` | `/group/SetChatroomName` | 设置群昵称 | 初级版 | -| 18 | `POST` | `/group/SetGetChatRoomInfoDetail` | 获取群公告 | 高级版 | -| 19 | `POST` | `/group/SetGroupNickname` | 设置我在本群的昵称 | 初级版 | -| 20 | `POST` | `/group/ToJoinGroup` | 同意入群 | 初级版 | +- 套餐:**初级版** -## 7. 朋友圈(16 个接口) +**Query 参数** -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/sns/CdnSnsVideoUpload` | 上传CDN朋友圈视频 | 高级版 | -| 2 | `POST` | `/sns/DownloadMedia` | 下载朋友圈视频 | 高级版 | -| 3 | `POST` | `/sns/GetCollectCircle` | 获取收藏朋友圈详情 | 高级版 | -| 4 | `POST` | `/sns/GetSnsSync` | 同步朋友圈 | 初级版 | -| 5 | `POST` | `/sns/SendFavItemCircle` | 转发收藏朋友圈 | 高级版 | -| 6 | `POST` | `/sns/SendFriendCircle` | 发送朋友圈 | 初级版 | -| 7 | `POST` | `/sns/SendFriendCircleByXMl` | 发送朋友圈XML结构 | 初级版 | -| 8 | `POST` | `/sns/SendOneIdCircle` | 一键转发朋友圈 | 高级版 | -| 9 | `POST` | `/sns/SendSnsComment` | 点赞评论 | 初级版 | -| 10 | `POST` | `/sns/SendSnsObjectDetailById` | 获取指定id朋友圈 | 初级版 | -| 11 | `POST` | `/sns/SendSnsObjectOp` | 朋友圈操作 | 高级版 | -| 12 | `POST` | `/sns/SendSnsTimeLine` | 获取朋友圈主页 | 初级版 | -| 13 | `POST` | `/sns/SendSnsUserPage` | 获取指定人朋友圈 | 初级版 | -| 14 | `POST` | `/sns/SetBackgroundImage` | 设置朋友圈背景图片 | 初级版 | -| 15 | `POST` | `/sns/SetFriendCircleDays` | 设置朋友圈可见天数 | 初级版 | -| 16 | `POST` | `/sns/UploadFriendCircleImage` | 上传图片信息 | 初级版 | +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | -## 8. 收藏(4 个接口) +--- -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/favor/BatchDelFavItem` | 删除收藏 | 高级版 | -| 2 | `GET` | `/favor/FavSync` | 同步收藏 | 高级版 | -| 3 | `POST` | `/favor/GetFavItemId` | 获取收藏详细 | 高级版 | -| 4 | `POST` | `/favor/GetFavList` | 获取收藏list | 高级版 | +### 2.3 `GET /user/GetInviteKeyword` - 获取关键词邀请入群配置 -## 9. 支付(9 个接口) +- 套餐:**初级版** -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/pay/Collectmoney` | 确定收款 | 高级版 | -| 2 | `POST` | `/pay/ConfirmPreTransfer` | 确认转账(客户端版本过低会无法转账) | 高级版 | -| 3 | `POST` | `/pay/CreatePreTransfer` | 创建转账 | 高级版 | -| 4 | `POST` | `/pay/GeneratePayQCode` | 生成自定义收款二维码 | 高级版 | -| 5 | `POST` | `/pay/GetBandCardList` | 获取银行卡信息 | 高级版 | -| 6 | `POST` | `/pay/GetRedEnvelopesDetail` | 查看红包详情 | 高级版 | -| 7 | `POST` | `/pay/GetRedPacketList` | 查看红包领取列表 | 高级版 | -| 8 | `POST` | `/pay/OpenRedEnvelopes` | 拆红包 | 高级版 | -| 9 | `POST` | `/pay/WXCreateRedPacket` | 创建红包 | 高级版 | +**Query 参数** -## 10. 公众号/小程序(13 个接口) +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/applet/AuthMpLogin` | 授权公众号登录 | 高级版 | -| 2 | `POST` | `/applet/FollowGH` | 关注公众号 | 高级版 | -| 3 | `POST` | `/applet/GetA8Key` | 授权链接 | 高级版 | -| 4 | `POST` | `/applet/GetAppMsgExt` | 阅读公众号文章 | 高级版 | -| 5 | `POST` | `/applet/GetAppMsgExtLike` | 点赞公众号文章 | 高级版 | -| 6 | `POST` | `/applet/GetAppMsgReadCount` | 获取公众号文章阅读数 | 高级版 | -| 7 | `POST` | `/applet/GetMpA8Key` | 授权链接 | 高级版 | -| 8 | `POST` | `/applet/GetMpHistoryMessage` | 获取公众号历史消息 | 高级版 | -| 9 | `POST` | `/applet/JSOperateWxData` | 小程序云函数操作 | 高级版 | -| 10 | `POST` | `/applet/JsLogin` | 授权小程序(返回授权后的code) | 高级版 | -| 11 | `POST` | `/applet/QRConnectAuthorize` | 二维码授权请求 | 高级版 | -| 12 | `POST` | `/applet/QRConnectAuthorizeConfirm` | 二维码授权确认 | 高级版 | -| 13 | `POST` | `/applet/SdkOauthAuthorize` | 应用授权 | 高级版 | +--- -## 11. 企业微信(22 个接口) +### 2.4 `GET /user/GetKeywordReply` - 获取关键词自动回复配置 -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/qy/QWAcceptChatRoom` | 同意进企业群 | 定制版 | -| 2 | `POST` | `/qy/QWAddChatRoomMember` | 直接拉朋友进企业群 | 定制版 | -| 3 | `POST` | `/qy/QWAdminAcceptJoinChatRoomSet` | 设定企业群管理审核进群 | 定制版 | -| 4 | `POST` | `/qy/QWApplyAddContact` | 向企业微信打招呼 | 定制版 | -| 5 | `POST` | `/qy/QWAppointChatRoomAdmin` | 增加企业管理员 | 定制版 | -| 6 | `POST` | `/qy/QWChatRoomAnnounce` | 发布企业群公告 | 定制版 | -| 7 | `POST` | `/qy/QWChatRoomTransferOwner` | 转让企业群 | 定制版 | -| 8 | `POST` | `/qy/QWContact` | 提取企业 wx 详情 | 定制版 | -| 9 | `POST` | `/qy/QWCreateChatRoom` | 创建企业群 | 定制版 | -| 10 | `POST` | `/qy/QWDelChatRoom` | 删除企业群 | 定制版 | -| 11 | `POST` | `/qy/QWDelChatRoomAdmin` | 移除群管理员 | 定制版 | -| 12 | `POST` | `/qy/QWDelChatRoomMember` | 删除企业群成员 | 定制版 | -| 13 | `POST` | `/qy/QWGetChatRoomMember` | 提取企业群全部成员 | 定制版 | -| 14 | `POST` | `/qy/QWGetChatRoomQR` | 提取企业群二维码 | 定制版 | -| 15 | `POST` | `/qy/QWGetChatroomInfo` | 提取企业群名称公告设定等信息 | 定制版 | -| 16 | `POST` | `/qy/QWInviteChatRoomMember` | 发送群邀请链接 | 定制版 | -| 17 | `POST` | `/qy/QWModChatRoomMemberNick` | 修改成员在群中呢称 | 定制版 | -| 18 | `POST` | `/qy/QWModChatRoomName` | 修改企业群名称 | 定制版 | -| 19 | `POST` | `/qy/QWRemark` | 备注企业 wxid | 定制版 | -| 20 | `POST` | `/qy/QWSearchContact` | 搜手机或企业对外名片链接提取验证 | 定制版 | -| 21 | `POST` | `/qy/QWSyncChatRoom` | 提取全部企业微信群- | 定制版 | -| 22 | `POST` | `/qy/QWSyncContact` | 提取全部的企业通讯录 | 定制版 | +- 套餐:**初级版** -## 12. 视频号(4 个接口) +**Query 参数** -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/finder/ChannelsLogin` | 视频号助手扫码登录 | 高级版 | -| 2 | `POST` | `/finder/FinderFollow` | 关注取消 | 高级版 | -| 3 | `POST` | `/finder/FinderSearch` | 视频号搜索 | 高级版 | -| 4 | `POST` | `/finder/FinderUserPrepare` | 视频号中心 | 高级版 | +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | -## 13. 设备(4 个接口) +--- -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/equipment/DelSafeDevice` | 删除安全设备 | 初级版 | -| 2 | `GET` | `/equipment/GetBoundHardDevice` | 获取硬件设备情况 | 初级版 | -| 3 | `GET` | `/equipment/GetOnlineInfo` | 获取在线设备信息 | 初级版 | -| 4 | `POST` | `/equipment/GetSafetyInfo` | 获取安全设备列表 | 初级版 | +### 2.5 `GET /user/GetKickKeyword` - 获取踢人关键词配置 -## 14. 微信小店(4 个接口) +- 套餐:**初级版** -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/shop/ExtDeviceLoginConfirmGet` | | 定制版 | -| 2 | `POST` | `/shop/ExtDeviceLoginConfirmOk` | | 定制版 | -| 3 | `POST` | `/shop/ScanQrcodeEventReport` | | 定制版 | -| 4 | `POST` | `/shop/ShopLoginConfirm` | 微信小店确认登录 | 定制版 | +**Query 参数** -## 15. 其他(8 个接口) +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/other/GetPeopleNearby` | 查看附近的人 | 高级版 | -| 2 | `GET` | `/other/GetProjectFullPath` | 获取项目完整路径 | 高级版 | -| 3 | `POST` | `/other/GetRedisSyncMsg` | 获取缓存在redis中的消息 | 高级版 | -| 4 | `POST` | `/other/GetUserRankLikeCount` | 获取步数排行数据列表 | 高级版 | -| 5 | `POST` | `/other/QWImageDownload` | 企微图片下载 | 高级版 | -| 6 | `POST` | `/other/UpdateCmdStatus` | 更新指令状态, key 为指令 id,Value 为指令状态 0|1,ValueStr 为字符串值 | 高级版 | -| 7 | `POST` | `/other/UpdateStepNumber` | 修改步数 | 高级版 | -| 8 | `POST` | `/other/UploadAppAttach` | 上传文件 | 高级版 | +--- -## 16. 同步消息(1 个接口) +### 2.6 `POST /user/GetMyQrCode` - 获取我的二维码 -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `GET` | `/ws/GetSyncMsg` | 如果 "key" 有效,则调用 WebSocketHandler 进行后续处理。 | 高级版 | +- 套餐:**初级版** -## 17. 管理/授权(9 个接口) +**Query 参数** -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/admin/DelayAuthKey` | 授权码延期 | 白标/OEM | -| 2 | `POST` | `/admin/DeleteAuthKey` | 删除授权码 | 白标/OEM | -| 3 | `POST` | `/admin/DisableAuthKey` | 禁用授权码 | 白标/OEM | -| 4 | `POST` | `/admin/GenAuthKey1` | 生成授权码(新设备) | 白标/OEM | -| 5 | `GET` | `/admin/GenAuthKey2` | 生成授权码(新设备) | 白标/OEM | -| 6 | `POST` | `/admin/GenAuthKey3` | 生成授权码(1-日 7-周 30-月 90-季 180-半年 365-年 30000-永久)此key不使用无过期时间 | 白标/OEM | -| 7 | `GET` | `/admin/GetActiveLicenseKeys` | 查询所有激活状态的卡密 | 白标/OEM | -| 8 | `GET` | `/admin/GetProxyMappingList` | 获取代理映射列表 | 白标/OEM | -| 9 | `GET` | `/admin/HttpSyncLicenseKey` | 同步卡密激活状态, HTTP-轮询方式 | 白标/OEM | +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | -## 18. 好友(11 个接口) +**请求体 (GetQrCodeModel)** -| # | 方法 | 接口路径 | 说明 | 套餐 | -|---:|---|---|---|---| -| 1 | `POST` | `/friend/AgreeAdd` | 同意好友请求 | 初级版 | -| 2 | `POST` | `/friend/DelContact` | 删除好友 | 初级版 | -| 3 | `POST` | `/friend/GetContactDetailsList` | 获取联系人详情 | 初级版 | -| 4 | `POST` | `/friend/GetContactList` | 获取全部联系人 | 初级版 | -| 5 | `POST` | `/friend/GetFriendRelation` | 获取好友关系 | 初级版 | -| 6 | `GET` | `/friend/GetGHList` | 获取关注的公众号列表 | 高级版 | -| 7 | `GET` | `/friend/GetMFriend` | 获取手机通讯录好友 | 高级版 | -| 8 | `GET` | `/friend/GroupList` | 获取保存的群聊列表 | 高级版 | -| 9 | `POST` | `/friend/SearchContact` | 搜索联系人 | 初级版 | -| 10 | `POST` | `/friend/UploadMContact` | 上传手机通讯录好友 | 高级版 | -| 11 | `POST` | `/friend/VerifyUser` | 验证好友/添加好友 | 初级版 | +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Recover` | `boolean` | 保持默认值, 无需修改 | +| `Style` | `integer(uint32)` | 个人二维码样式: 可设置为8, 其余自行探索 | + +--- + +### 2.7 `GET /user/GetProfile` - 获取个人资料信息 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 2.8 `GET /user/GetWelcome` - 获取欢迎词配置 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 2.9 `POST /user/ModifyRemark` - 修改备注 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendModifyRemarkRequestModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `RemarkName` | `string` | - | +| `UserName` | `string` | - | + +--- + +### 2.10 `POST /user/ModifyUserInfo` - 修改资料 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ModifyUserInfo)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `City` | `string` | - | +| `Country` | `string` | - | +| `InitFlag` | `integer(uint32)` | - | +| `NickName` | `string` | - | +| `Province` | `string` | - | +| `Sex` | `integer(uint32)` | - | +| `Signature` | `string` | - | + +--- + +### 2.11 `POST /user/ResetGender` - 重置性别 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 2.12 `POST /user/SetAdminKeyword` - 设置管理员关键词配置 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 2.13 `POST /user/SetFunctionSwitch` - 设置添加我的方式 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (WxFunctionSwitchModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Function` | `integer(uint32)` | - | +| `Value` | `integer(uint32)` | - | + +--- + +### 2.14 `POST /user/SetInviteKeyword` - 设置关键词邀请入群配置 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 2.15 `POST /user/SetKeywordReply` - 设置关键词自动回复 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 2.16 `POST /user/SetKickKeyword` - 设置踢人关键词配置 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 2.17 `POST /user/SetNickName` - 设置昵称 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UpdateNickNameModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Scene` | `integer(uint32)` | - | +| `Val` | `string` | - | + +--- + +### 2.18 `POST /user/SetProxy` - 修改Socks5代理 socks5://username:password@ipv4: + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetLoginQrCodeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Check` | `boolean` | 修改代理时(SetProxy接口) 是否发送检测代理请求(可能导致请求超时) | +| `IpadOrmac` | `string` | - | +| `Proxy` | `string` | socks代理,例如:socks5://username:password@ipv4:port | + +--- + +### 2.19 `POST /user/SetSendPat` - 设置拍一拍名称 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SetSendPatModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Value` | `string` | - | + +--- + +### 2.20 `POST /user/SetSexDq` - 修改性别 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UpdateSexModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `City` | `string` | - | +| `Country` | `string` | - | +| `Province` | `string` | - | +| `Sex` | `integer(uint32)` | - | + +--- + +### 2.21 `POST /user/SetSignature` - 修改签名 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UpdateNickNameModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Scene` | `integer(uint32)` | - | +| `Val` | `string` | - | + +--- + +### 2.22 `POST /user/SetWechat` - 设置微信号 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (AlisaModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Alisa` | `string` | - | + +--- + +### 2.23 `POST /user/SetWelcome` - 设置欢迎词配置 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 2.24 `POST /user/UpdateAutoPass` - 修改加好友需要验证属性 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UpdateAutopassModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `SwitchType` | `integer(uint32)` | - | + +--- + +### 2.25 `POST /user/UpdateNickName` - 修改名称 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UpdateNickNameModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Scene` | `integer(uint32)` | - | +| `Val` | `string` | - | + +--- + +### 2.26 `POST /user/UploadHeadImage` - 上传头像 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UploadHeadImageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Base64` | `string` | - | + +--- + +## 3. 好友(11 个接口) + +### 3.1 `POST /friend/AgreeAdd` - 同意好友请求 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (VerifyUserRequestModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomUserName` | `string` | 通过群来添加好友 需要设置此值为群id | +| `OpCode` | `integer(uint32)` | 操作类型: 1(免验证发送请求) 2(添加好友/发送验证申请) 3(同意好友/通过好友验证) 4(拒绝好友) | +| `Scene` | `integer(int)` | 添加来源, 同意添加好友时传回调消息xml中的scene值.
添加好友时的枚举值如下:
1(QQ) 2(邮箱) 3(微信号) 4(QQ好友) 8(来自群聊) 13(通讯录)
14(群聊) 15(手机号) 18(附近的人) 25(漂流瓶) 29(摇一摇) 30(二维码) | +| `V3` | `string` | V3用户名数据(SearchContact请求返回的UserValue) | +| `V4` | `string` | V4校验数据(SearchContact请求返回的AntispamTicket) | +| `VerifyContent` | `string` | 添加好友时的(招呼语/验证信息) | + +--- + +### 3.2 `POST /friend/DelContact` - 删除好友 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DelContactModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `DelUserName` | `string` | - | + +--- + +### 3.3 `POST /friend/GetContactDetailsList` - 获取联系人详情 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (BatchGetContactModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `RoomWxIDList` | `string[]` | - | +| `UserNames` | `string[]` | - | + +--- + +### 3.4 `POST /friend/GetContactList` - 获取全部联系人 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetContactListModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `CurrentChatRoomContactSeq` | `integer(uint32)` | - | +| `CurrentWxcontactSeq` | `integer(uint32)` | - | + +--- + +### 3.5 `POST /friend/GetFriendRelation` - 获取好友关系 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetFriendRelationModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `UserName` | `string` | - | + +--- + +### 3.6 `GET /friend/GetGHList` - 获取关注的公众号列表 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 3.7 `GET /friend/GetMFriend` - 获取手机通讯录好友 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 3.8 `GET /friend/GroupList` - 获取保存的群聊列表 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 3.9 `POST /friend/SearchContact` - 搜索联系人 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SearchContactRequestModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `FromScene` | `integer(uint32)` | - | +| `OpCode` | `integer(uint32)` | 操作类型 | +| `SearchScene` | `integer(uint32)` | 搜索场景 | +| `UserName` | `string` | 要搜索的内容(微信号、手机号、QQ号等) | + +--- + +### 3.10 `POST /friend/UploadMContact` - 上传手机通讯录好友 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UploadMContactModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Mobile` | `string` | - | +| `MobileList` | `string[]` | - | +| `Opcode` | `integer(int32)` | - | + +--- + +### 3.11 `POST /friend/VerifyUser` - 验证好友/添加好友 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (VerifyUserRequestModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomUserName` | `string` | 通过群来添加好友 需要设置此值为群id | +| `OpCode` | `integer(uint32)` | 操作类型: 1(免验证发送请求) 2(添加好友/发送验证申请) 3(同意好友/通过好友验证) 4(拒绝好友) | +| `Scene` | `integer(int)` | 添加来源, 同意添加好友时传回调消息xml中的scene值.
添加好友时的枚举值如下:
1(QQ) 2(邮箱) 3(微信号) 4(QQ好友) 8(来自群聊) 13(通讯录)
14(群聊) 15(手机号) 18(附近的人) 25(漂流瓶) 29(摇一摇) 30(二维码) | +| `V3` | `string` | V3用户名数据(SearchContact请求返回的UserValue) | +| `V4` | `string` | V4校验数据(SearchContact请求返回的AntispamTicket) | +| `VerifyContent` | `string` | 添加好友时的(招呼语/验证信息) | + +--- + +## 4. 标签(5 个接口) + +### 4.1 `POST /label/AddContactLabel` - 添加列表 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (LabelModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `LabelId` | `string` | - | +| `LabelNameList` | `string[]` | - | +| `UserLabelList` | `baseinfo.UserLabelInfoItem[]` | - | + +--- + +### 4.2 `POST /label/DelContactLabel` - 删除标签 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (LabelModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `LabelId` | `string` | - | +| `LabelNameList` | `string[]` | - | +| `UserLabelList` | `baseinfo.UserLabelInfoItem[]` | - | + +--- + +### 4.3 `GET /label/GetContactLabelList` - 获取标签列表 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 4.4 `POST /label/GetWXFriendListByLabel` - 获取标签下所有好友 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (LabelModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `LabelId` | `string` | - | +| `LabelNameList` | `string[]` | - | +| `UserLabelList` | `baseinfo.UserLabelInfoItem[]` | - | + +--- + +### 4.5 `POST /label/ModifyLabel` - 修改标签 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (LabelModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `LabelId` | `string` | - | +| `LabelNameList` | `string[]` | - | +| `UserLabelList` | `baseinfo.UserLabelInfoItem[]` | - | + +--- + +## 5. 消息(24 个接口) + +### 5.1 `POST /message/AddMessageMgr` - 添加要发送的文本消息进入管理器 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `MsgItem` | `MessageItem[]` | 消息体数组 | + +--- + +### 5.2 `POST /message/CdnUploadVideo` - 上传视频 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (CdnUploadVideoRequest)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ThumbData` | `integer[]` | ThumbData | +| `ToUserName` | `string` | - | +| `VideoData` | `integer[]` | 视频数据 | + +--- + +### 5.3 `POST /message/DownloadEmojiGif` - 下载表情 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DownloadEmojiModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `xml_content` | `string` | msg_type=47的消息xml内容 | + +--- + +### 5.4 `POST /message/ForwardEmoji` - 转发表情,包含动图 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendEmojiMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `EmojiList` | `SendEmojiItem[]` | - | + +--- + +### 5.5 `POST /message/ForwardImageMessage` - 转发图片 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ForwardMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ForwardImageList` | `ForwardImageItem[]` | - | +| `ForwardVideoList` | `ForwardVideoItem[]` | - | + +--- + +### 5.6 `POST /message/ForwardVideoMessage` - 转发视频 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ForwardMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ForwardImageList` | `ForwardImageItem[]` | - | +| `ForwardVideoList` | `ForwardVideoItem[]` | - | + +--- + +### 5.7 `POST /message/GetMsgBigImg` - 获取图片(高清图片下载) + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DownloadParam)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `CompressType` | `integer(int)` | 下载图片时,数据压缩类型(默认为0即可) | +| `FromUserName` | `string` | 下载图片时,图片消息的发送者 | +| `MsgId` | `integer(uint32)` | 消息ID(注意是msg_id 不是new_msg_id) | +| `Section` | `DataSection` | 当前要获取的数据分包 | +| `ToUserName` | `string` | 下载图片时,图片消息的接收者 | +| `TotalLen` | `integer(int)` | 下载数据的总长度 | + +--- + +### 5.8 `POST /message/GetMsgVideo` - 获取视频(视频数据下载) + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DownloadParam)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `CompressType` | `integer(int)` | 下载图片时,数据压缩类型(默认为0即可) | +| `FromUserName` | `string` | 下载图片时,图片消息的发送者 | +| `MsgId` | `integer(uint32)` | 消息ID(注意是msg_id 不是new_msg_id) | +| `Section` | `DataSection` | 当前要获取的数据分包 | +| `ToUserName` | `string` | 下载图片时,图片消息的接收者 | +| `TotalLen` | `integer(int)` | 下载数据的总长度 | + +--- + +### 5.9 `POST /message/GetMsgVoice` - 下载语音消息 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DownloadVoiceModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Bufid` | `string` | - | +| `Length` | `integer(int)` | - | +| `NewMsgId` | `string` | - | +| `ToUserName` | `string` | - | + +--- + +### 5.10 `POST /message/GroupMassMsgImage` - 群发图片 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GroupMassMsgImageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ImageBase64` | `string` | - | +| `ToUserName` | `string[]` | - | + +--- + +### 5.11 `POST /message/GroupMassMsgText` - 群发接口 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GroupMassMsgTextModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Content` | `string` | - | +| `ToUserName` | `string[]` | - | + +--- + +### 5.12 `POST /message/HttpSyncMsg` - 同步消息, HTTP-轮询方式 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SyncMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Count` | `integer(int)` | 同步几条消息; 接收空请求体, 默认为0, 同步所有消息 | + +--- + +### 5.13 `POST /message/NewSyncHistoryMessage` - 同步历史消息 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 5.14 `POST /message/RevokeMsg` - 撤销消息 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (RevokeMsgModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ClientImgIdStr` | `string` | 保存clientImgId的原始字符串值 | +| `ClientMsgId` | `integer(uint64)` | - | +| `CreateTime` | `integer(uint64)` | - | +| `IsImage` | `boolean` | 标识是否为图片消息 | +| `NewMsgId` | `string` | - | +| `ToUserName` | `string` | - | + +--- + +### 5.15 `POST /message/RevokeMsgNew` - 撤回消息(New) + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (RevokeMsgModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ClientImgIdStr` | `string` | 保存clientImgId的原始字符串值 | +| `ClientMsgId` | `integer(uint64)` | - | +| `CreateTime` | `integer(uint64)` | - | +| `IsImage` | `boolean` | 标识是否为图片消息 | +| `NewMsgId` | `string` | - | +| `ToUserName` | `string` | - | + +--- + +### 5.16 `POST /message/SendAppMessage` - 发送App消息 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (AppMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `AppList` | `AppMessageItem[]` | - | + +--- + +### 5.17 `POST /message/SendCdnDownload` - 下载 请求 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DownMediaModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `AesKey` | `string` | - | +| `FileType` | `integer(uint32)` | - | +| `FileURL` | `string` | - | + +--- + +### 5.18 `POST /message/SendEmojiMessage` - 发送表情 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendEmojiMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `EmojiList` | `SendEmojiItem[]` | - | + +--- + +### 5.19 `POST /message/SendImageMessage` - 发送图片消息 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `MsgItem` | `MessageItem[]` | 消息体数组 | + +--- + +### 5.20 `POST /message/SendImageNewMessage` - 发送图片消息(New) + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `MsgItem` | `MessageItem[]` | 消息体数组 | + +--- + +### 5.21 `POST /message/SendTextMessage` - 发送文本消息 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendMessageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `MsgItem` | `MessageItem[]` | 消息体数组 | + +--- + +### 5.22 `POST /message/SendVoice` - 发送语音 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendUploadVoiceRequestModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ToUserName` | `string` | - | +| `VoiceData` | `string` | - | +| `VoiceFormat` | `integer(int32)` | - | +| `VoiceSecond,` | `integer(int32)` | - | + +--- + +### 5.23 `POST /message/ShareCardMessage` - 分享名片消息 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ShareCardParam)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `CardAlias` | `string` | 名片别名(发送公众号名片时留空) | +| `CardFlag` | `integer(int)` | 名片CertFlag(0:个人名片 24:公众号名片) | +| `CardNickName` | `string` | 名片昵称 | +| `CardWxId` | `string` | 名片wxid | +| `ToUserName` | `string` | 消息接收者 | + +--- + +### 5.24 `POST /message/UploadImageToCDN` - 纯CDN图片上传接口 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UploadImageToCDNModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `imageContent` | `string` | 图片的base64编码 | + +--- + +## 6. 消息回调(4 个接口) + +### 6.1 `GET /message/DeleteCallback` - 删除消息回调配置 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 6.2 `GET /message/GetCallback` - 获取消息回调配置 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 6.3 `POST /message/SetCallback` - 设置消息回调 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (MessageCallbackConfigModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `CallbackURL` | `string` | 回调URL | +| `Enabled` | `boolean` | 是否启用回调 | + +--- + +### 6.4 `GET /message/TestCallback` - 测试消息回调配置 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +## 7. 群管理(20 个接口) + +### 7.1 `POST /group/AddChatRoomMembers` - 添加群成员 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (InviteChatroomMembersModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `UserList` | `string[]` | - | + +--- + +### 7.2 `POST /group/AddChatroomAdmin` - 添加群管理员 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ChatroomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `UserList` | `string[]` | - | + +--- + +### 7.3 `POST /group/CreateChatRoom` - 创建群请求 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (CreateChatRoomModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `TopIc` | `string` | - | +| `UserList` | `string[]` | - | + +--- + +### 7.4 `POST /group/DelChatroomAdmin` - 删除群管理员 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ChatroomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `UserList` | `string[]` | - | + +--- + +### 7.5 `POST /group/GetChatRoomInfo` - 获取群详情 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ChatRoomWxIdListModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomWxIdList` | `string[]` | - | + +--- + +### 7.6 `POST /group/GetChatroomMemberDetail` - 获取群成员详细 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetChatroomMemberDetailModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | + +--- + +### 7.7 `POST /group/GetChatroomQrCode` - 获取群二维码 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetChatroomQrCodeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | + +--- + +### 7.8 `POST /group/InviteChatroomMembers` - 邀请群成员 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (InviteChatroomMembersModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `UserList` | `string[]` | - | + +--- + +### 7.9 `POST /group/MoveToContract` - 获取群聊 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (MoveContractModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Val` | `integer(uint32)` | - | + +--- + +### 7.10 `POST /group/QuitChatroom` - 退出群聊 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetChatroomMemberDetailModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | + +--- + +### 7.11 `POST /group/ScanIntoUrlGroup` - 扫码入群 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ScanIntoUrlGroupModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Url` | `string` | - | + +--- + +### 7.12 `POST /group/SendDelDelChatRoomMember` - 删除群成员 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (InviteChatroomMembersModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `UserList` | `string[]` | - | + +--- + +### 7.13 `POST /group/SendPat` - 群拍一拍功能 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendPatModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Scene` | `integer(int64)` | - | +| `ToUserName` | `string` | - | + +--- + +### 7.14 `POST /group/SendTransferGroupOwner` - 转让群 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (TransferGroupOwnerModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `NewOwnerUserName` | `string` | - | + +--- + +### 7.15 `POST /group/SetChatroomAccessVerify` - 设置群聊邀请开关 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SetChatroomAccessVerifyModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Enable` | `boolean` | - | + +--- + +### 7.16 `POST /group/SetChatroomAnnouncement` - 设置群公告 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UpdateChatroomAnnouncementModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Content` | `string` | - | + +--- + +### 7.17 `POST /group/SetChatroomName` - 设置群昵称 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ChatroomNameModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Nickname` | `string` | - | + +--- + +### 7.18 `POST /group/SetGetChatRoomInfoDetail` - 获取群公告 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetChatroomMemberDetailModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | + +--- + +### 7.19 `POST /group/SetGroupNickname` - 设置我在本群的昵称 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ChatroomNameModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Nickname` | `string` | - | + +--- + +### 7.20 `POST /group/ToJoinGroup` - 同意入群 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ConsentToJoinGroupModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Url` | `string` | - | + +--- + +## 8. 朋友圈(16 个接口) + +### 8.1 `POST /sns/CdnSnsVideoUpload` - 上传CDN朋友圈视频 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (CdnSnsVideoUploadModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ThumbData` | `string` | 缩略图数据的base64编码 | +| `VideoData` | `string` | 视频数据的base64编码 | + +--- + +### 8.2 `POST /sns/DownloadMedia` - 下载朋友圈视频 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DownloadMediaModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Key` | `string` | - | +| `URL` | `string` | - | + +--- + +### 8.3 `POST /sns/GetCollectCircle` - 获取收藏朋友圈详情 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendFavItemCircle)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `BlackList` | `string[]` | - | +| `FavItemID` | `integer(uint32)` | - | +| `Location` | `baseinfo.Location` | - | +| `LocationVal` | `integer(int64)` | - | +| `SourceID` | `string` | - | + +--- + +### 8.4 `POST /sns/GetSnsSync` - 同步朋友圈 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 8.5 `POST /sns/SendFavItemCircle` - 转发收藏朋友圈 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendFavItemCircle)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `BlackList` | `string[]` | - | +| `FavItemID` | `integer(uint32)` | - | +| `Location` | `baseinfo.Location` | - | +| `LocationVal` | `integer(int64)` | - | +| `SourceID` | `string` | - | + +--- + +### 8.6 `POST /sns/SendFriendCircle` - 发送朋友圈 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SnsPostItemModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `BlackList` | `string[]` | 不可见好友列表 | +| `Content` | `string` | 文本内容 | +| `ContentStyle` | `integer(uint32)` | 纯文字/图文/引用/视频 | +| `ContentUrl` | `string` | - | +| `Description` | `string` | - | +| `GroupUserList` | `string[]` | 可见好友列表 | +| `LocationInfo` | `SnsLocationInfoModel` | 发送朋友圈的位置信息 | +| `MediaList` | `SnsMediaItemModel[]` | 图片/视频列表 | +| `Privacy` | `integer(uint32)` | 是否仅自己可见 | +| `WithUserList` | `string[]` | 提醒好友看列表 | + +--- + +### 8.7 `POST /sns/SendFriendCircleByXMl` - 发送朋友圈XML结构 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (TimelineObject)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ActionInfo` | `ActionInfo` | - | +| `AppInfo` | `AppInfo` | - | +| `ContentDesc` | `string` | - | +| `ContentDescScene` | `integer(uint32)` | - | +| `ContentDescShowType` | `integer(uint32)` | - | +| `ContentObject` | `ContentObject` | - | +| `ContentObjectVideo` | `ContentObjectVideo` | - | +| `CreateTime` | `integer(uint32)` | - | +| `ID` | `integer(uint64)` | - | +| `Location` | `Location` | - | +| `Private` | `integer(uint32)` | - | +| `PublicUserName` | `string` | - | +| `ShowFlag` | `integer(uint32)` | - | +| `SightFolded` | `integer(uint32)` | - | +| `SourceNickName` | `string` | - | +| `SourceUserName` | `string` | - | +| `StatExtStr` | `string` | - | +| `StatisticsData` | `string` | - | +| `StreamVideo` | `StreamVideo` | - | +| `UserName` | `string` | - | + +--- + +### 8.8 `POST /sns/SendOneIdCircle` - 一键转发朋友圈 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetIdDetailModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `BlackList` | `string[]` | - | +| `Id` | `string` | - | +| `Location` | `baseinfo.Location` | - | +| `LocationVal` | `integer(int64)` | - | + +--- + +### 8.9 `POST /sns/SendSnsComment` - 点赞评论 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendSnsCommentRequestModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `SnsCommentList` | `SnsCommentItem[]` | - | +| `Tx` | `boolean` | - | + +--- + +### 8.10 `POST /sns/SendSnsObjectDetailById` - 获取指定id朋友圈 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetIdDetailModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `BlackList` | `string[]` | - | +| `Id` | `string` | - | +| `Location` | `baseinfo.Location` | - | +| `LocationVal` | `integer(int64)` | - | + +--- + +### 8.11 `POST /sns/SendSnsObjectOp` - 朋友圈操作 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SendSnsObjectOpRequestModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `SnsObjectOpList` | `SnsObjectOpItem[]` | - | + +--- + +### 8.12 `POST /sns/SendSnsTimeLine` - 获取朋友圈主页 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetSnsInfoModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `FirstPageMD5` | `string` | - | +| `MaxID` | `integer(uint64)` | - | +| `UserName` | `string` | - | + +--- + +### 8.13 `POST /sns/SendSnsUserPage` - 获取指定人朋友圈 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetSnsInfoModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `FirstPageMD5` | `string` | - | +| `MaxID` | `integer(uint64)` | - | +| `UserName` | `string` | - | + +--- + +### 8.14 `POST /sns/SetBackgroundImage` - 设置朋友圈背景图片 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SetBackgroundImageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Url` | `string` | - | + +--- + +### 8.15 `POST /sns/SetFriendCircleDays` - 设置朋友圈可见天数 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SetFriendCircleDaysModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Function` | `integer(uint32)` | - | +| `Value` | `integer(uint32)` | - | + +--- + +### 8.16 `POST /sns/UploadFriendCircleImage` - 上传图片信息 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UploadFriendCircleModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ImageDataList` | `string[]` | - | +| `VideoDataList` | `string[]` | - | + +--- + +## 9. 收藏(4 个接口) + +### 9.1 `POST /favor/BatchDelFavItem` - 删除收藏 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (FavInfoModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `FavId` | `integer(uint32)` | - | +| `KeyBuf` | `string` | - | + +--- + +### 9.2 `GET /favor/FavSync` - 同步收藏 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 9.3 `POST /favor/GetFavItemId` - 获取收藏详细 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (FavInfoModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `FavId` | `integer(uint32)` | - | +| `KeyBuf` | `string` | - | + +--- + +### 9.4 `POST /favor/GetFavList` - 获取收藏list + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (FavInfoModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `FavId` | `integer(uint32)` | - | +| `KeyBuf` | `string` | - | + +--- + +## 10. 支付(9 个接口) + +### 10.1 `POST /pay/Collectmoney` - 确定收款 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (CollectmoneyModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `InvalidTime` | `string` | - | +| `ToUserName` | `string` | - | +| `TransFerId` | `string` | - | +| `TransactionId` | `string` | - | + +--- + +### 10.2 `POST /pay/ConfirmPreTransfer` - 确认转账(客户端版本过低会无法转账) + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ConfirmPreTransfer)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `BankSerial` | `string` | 付款方式 Serial序列号 | +| `BankType` | `string` | 付款方式 类型 | +| `PayPassword` | `string` | 支付密码 | +| `ReqKey` | `string` | 创建转账返回的ReqKey | + +--- + +### 10.3 `POST /pay/CreatePreTransfer` - 创建转账 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (CreatePreTransfer)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Description` | `string` | 转账备注 | +| `Fee` | `integer(uint32)` | 转账金额(单位为分) | +| `ToUserName` | `string` | 要转账用户的wxid | + +--- + +### 10.4 `POST /pay/GeneratePayQCode` - 生成自定义收款二维码 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GeneratePayQCodeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Money` | `string` | 金额(单位为分), 999 即为 9.99 元 | +| `Name` | `string` | 收款备注 | + +--- + +### 10.5 `POST /pay/GetBandCardList` - 获取银行卡信息 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 10.6 `POST /pay/GetRedEnvelopesDetail` - 查看红包详情 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (HongBaoItem)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `DequeueAtMs` | `integer(int64)` | - | +| `EnqueueAtMs` | `integer(int64)` | - | +| `FromUserName` | `string` | - | +| `IsGroup` | `integer(uint32)` | 默认 1 | +| `Limit` | `integer(int64)` | - | +| `NativeURL` | `string` | - | +| `RecvAtMs` | `integer(int64)` | - | +| `SceneID` | `integer(uint32)` | - | +| `SessionUserName` | `string` | 群ID或个人ID | +| `URLItem` | `HongBaoURLItem` | - | + +--- + +### 10.7 `POST /pay/GetRedPacketList` - 查看红包领取列表 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetRedPacketList)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `HongBaoItem` | `HongBaoURLItem` | - | +| `Limit` | `integer(int64)` | - | +| `NativeURL` | `string` | - | +| `Offset` | `integer(int64)` | - | + +--- + +### 10.8 `POST /pay/OpenRedEnvelopes` - 拆红包 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (HongBaoItem)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `DequeueAtMs` | `integer(int64)` | - | +| `EnqueueAtMs` | `integer(int64)` | - | +| `FromUserName` | `string` | - | +| `IsGroup` | `integer(uint32)` | 默认 1 | +| `Limit` | `integer(int64)` | - | +| `NativeURL` | `string` | - | +| `RecvAtMs` | `integer(int64)` | - | +| `SceneID` | `integer(uint32)` | - | +| `SessionUserName` | `string` | 群ID或个人ID | +| `URLItem` | `HongBaoURLItem` | - | + +--- + +### 10.9 `POST /pay/WXCreateRedPacket` - 创建红包 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (RedPacket)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Amount` | `integer(uint32)` | 每个红包的金额(单位为分, 最小为100); 总金额为 Amount*Count | +| `Content` | `string` | 红包的备注内容(祝福语) | +| `Count` | `integer(uint32)` | 红包个数(最少为1) | +| `From` | `integer(uint32)` | InAway(0:群红包; 1:个人红包) | +| `RedType` | `integer(uint32)` | 红包类型(0 普通红包; 1 拼手气红包; ? 专属红包) | +| `Username` | `string` | 红包接收者; wxid 或 群ID | + +--- + +## 11. 公众号/小程序(13 个接口) + +### 11.1 `POST /applet/AuthMpLogin` - 授权公众号登录 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetMpA8KeyModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Opcode` | `integer(uint32)` | - | +| `Scene` | `integer(int64)` | - | +| `Url` | `string` | - | + +--- + +### 11.2 `POST /applet/FollowGH` - 关注公众号 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (FollowGHModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `GHList` | `VerifyUserItem[]` | - | + +--- + +### 11.3 `POST /applet/GetA8Key` - 授权链接 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetA8KeyRequestModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `OpCode` | `integer(uint32)` | - | +| `ReqUrl` | `string` | - | +| `Scene` | `integer(uint32)` | - | + +--- + +### 11.4 `POST /applet/GetAppMsgExt` - 阅读公众号文章 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ReadParam)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Url` | `string` | 公众号文章URL | + +--- + +### 11.5 `POST /applet/GetAppMsgExtLike` - 点赞公众号文章 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ReadParam)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Url` | `string` | 公众号文章URL | + +--- + +### 11.6 `POST /applet/GetAppMsgReadCount` - 获取公众号文章阅读数 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ReadParam)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Url` | `string` | 公众号文章URL | + +--- + +### 11.7 `POST /applet/GetMpA8Key` - 授权链接 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetMpA8KeyModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Opcode` | `integer(uint32)` | - | +| `Scene` | `integer(int64)` | - | +| `Url` | `string` | - | + +--- + +### 11.8 `POST /applet/GetMpHistoryMessage` - 获取公众号历史消息 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GetMpHistoryMsgModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Url` | `string` | - | + +--- + +### 11.9 `POST /applet/JSOperateWxData` - 小程序云函数操作 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (AppletModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `AppId` | `string` | 应用ID | +| `Data` | `string` | 小程序云函数操作的 Data; json字符串, 注意必须是 json 字符串; 传空时默认值为: '{"with_credentials":true,"from_component":true,"data":{"lang":"zh_CN"},"api_name":"webapi_getuserinfo"}' | +| `Opt` | `integer(int32)` | 小程序云函数操作的 Opt; 默认为1 | +| `PackageName` | `string` | - | +| `SdkName` | `string` | - | + +--- + +### 11.10 `POST /applet/JsLogin` - 授权小程序(返回授权后的code) + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (AppletModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `AppId` | `string` | 应用ID | +| `Data` | `string` | 小程序云函数操作的 Data; json字符串, 注意必须是 json 字符串; 传空时默认值为: '{"with_credentials":true,"from_component":true,"data":{"lang":"zh_CN"},"api_name":"webapi_getuserinfo"}' | +| `Opt` | `integer(int32)` | 小程序云函数操作的 Opt; 默认为1 | +| `PackageName` | `string` | - | +| `SdkName` | `string` | - | + +--- + +### 11.11 `POST /applet/QRConnectAuthorize` - 二维码授权请求 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QRConnectAuthorizeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `QrUrl` | `string` | - | + +--- + +### 11.12 `POST /applet/QRConnectAuthorizeConfirm` - 二维码授权确认 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QRConnectAuthorizeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `QrUrl` | `string` | - | + +--- + +### 11.13 `POST /applet/SdkOauthAuthorize` - 应用授权 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (AppletModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `AppId` | `string` | 应用ID | +| `Data` | `string` | 小程序云函数操作的 Data; json字符串, 注意必须是 json 字符串; 传空时默认值为: '{"with_credentials":true,"from_component":true,"data":{"lang":"zh_CN"},"api_name":"webapi_getuserinfo"}' | +| `Opt` | `integer(int32)` | 小程序云函数操作的 Opt; 默认为1 | +| `PackageName` | `string` | - | +| `SdkName` | `string` | - | + +--- + +## 12. 企业微信(22 个接口) + +### 12.1 `POST /qy/QWAcceptChatRoom` - 同意进企业群 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAcceptChatRoomModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Link` | `string` | - | +| `Opcode` | `integer(uint32)` | - | + +--- + +### 12.2 `POST /qy/QWAddChatRoomMember` - 直接拉朋友进企业群 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAddChatRoomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `ToUserName` | `string[]` | - | + +--- + +### 12.3 `POST /qy/QWAdminAcceptJoinChatRoomSet` - 设定企业群管理审核进群 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAdminAcceptJoinChatRoomSetModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `P` | `integer(int64)` | - | + +--- + +### 12.4 `POST /qy/QWApplyAddContact` - 向企业微信打招呼 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWApplyAddContactModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Content` | `string` | - | +| `UserName` | `string` | - | +| `V1` | `string` | - | + +--- + +### 12.5 `POST /qy/QWAppointChatRoomAdmin` - 增加企业管理员 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAddChatRoomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `ToUserName` | `string[]` | - | + +--- + +### 12.6 `POST /qy/QWChatRoomAnnounce` - 发布企业群公告 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWModChatRoomNameModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Name` | `string` | - | + +--- + +### 12.7 `POST /qy/QWChatRoomTransferOwner` - 转让企业群 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWChatRoomTransferOwnerModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `ToUserName` | `string` | - | + +--- + +### 12.8 `POST /qy/QWContact` - 提取企业 wx 详情 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWContactModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoom` | `string` | - | +| `T` | `string` | - | +| `ToUserName` | `string` | - | + +--- + +### 12.9 `POST /qy/QWCreateChatRoom` - 创建企业群 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWCreateModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ToUserName` | `string[]` | - | + +--- + +### 12.10 `POST /qy/QWDelChatRoom` - 删除企业群 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWModChatRoomNameModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Name` | `string` | - | + +--- + +### 12.11 `POST /qy/QWDelChatRoomAdmin` - 移除群管理员 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAddChatRoomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `ToUserName` | `string[]` | - | + +--- + +### 12.12 `POST /qy/QWDelChatRoomMember` - 删除企业群成员 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAddChatRoomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `ToUserName` | `string[]` | - | + +--- + +### 12.13 `POST /qy/QWGetChatRoomMember` - 提取企业群全部成员 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAddChatRoomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `ToUserName` | `string[]` | - | + +--- + +### 12.14 `POST /qy/QWGetChatRoomQR` - 提取企业群二维码 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAddChatRoomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `ToUserName` | `string[]` | - | + +--- + +### 12.15 `POST /qy/QWGetChatroomInfo` - 提取企业群名称公告设定等信息 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAddChatRoomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `ToUserName` | `string[]` | - | + +--- + +### 12.16 `POST /qy/QWInviteChatRoomMember` - 发送群邀请链接 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWAddChatRoomMemberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `ToUserName` | `string[]` | - | + +--- + +### 12.17 `POST /qy/QWModChatRoomMemberNick` - 修改成员在群中呢称 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWModChatRoomNameModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Name` | `string` | - | + +--- + +### 12.18 `POST /qy/QWModChatRoomName` - 修改企业群名称 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWModChatRoomNameModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `ChatRoomName` | `string` | 群聊ID:xxx@chatroom | +| `Name` | `string` | - | + +--- + +### 12.19 `POST /qy/QWRemark` - 备注企业 wxid + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWRemarkModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Name` | `string` | - | +| `ToUserName` | `string` | - | + +--- + +### 12.20 `POST /qy/QWSearchContact` - 搜手机或企业对外名片链接提取验证 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (SearchContactModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `FromScene` | `integer(uint64)` | - | +| `Tg` | `string` | - | +| `UserName` | `string` | - | + +--- + +### 12.21 `POST /qy/QWSyncChatRoom` - 提取全部企业微信群- + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (QWSyncChatRoomModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Key` | `string` | - | + +--- + +### 12.22 `POST /qy/QWSyncContact` - 提取全部的企业通讯录 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +## 13. 视频号(4 个接口) + +### 13.1 `POST /finder/ChannelsLogin` - 视频号助手扫码登录 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ChannelsLoginModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `finderUsername` | `string` | 指定要登录的视频号用户名,为空则选择第一个 | +| `url` | `string` | 视频号助手扫码登录确认链接 | + +--- + +### 13.2 `POST /finder/FinderFollow` - 关注取消 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (FinderFollowModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Cook` | `string` | - | +| `FinderUserName` | `string` | - | +| `OpType` | `integer(int32)` | - | +| `PosterUsername` | `string` | - | +| `RefObjectId` | `string` | - | +| `Userver` | `integer(int32)` | - | + +--- + +### 13.3 `POST /finder/FinderSearch` - 视频号搜索 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (FinderSearchModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Index` | `integer(uint32)` | - | +| `UserKey` | `string` | - | +| `Userver` | `integer(int32)` | - | +| `Uuid` | `string` | - | + +--- + +### 13.4 `POST /finder/FinderUserPrepare` - 视频号中心 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (FinderUserPrepareModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Userver` | `integer(int32)` | - | + +--- + +## 14. 设备(4 个接口) + +### 14.1 `POST /equipment/DelSafeDevice` - 删除安全设备 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DelSafeDeviceModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `DeviceUUID` | `string` | - | + +--- + +### 14.2 `GET /equipment/GetBoundHardDevice` - 获取硬件设备情况 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 14.3 `GET /equipment/GetOnlineInfo` - 获取在线设备信息 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 14.4 `POST /equipment/GetSafetyInfo` - 获取安全设备列表 + +- 套餐:**初级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +## 15. 微信小店(4 个接口) + +### 15.1 `POST /shop/ExtDeviceLoginConfirmGet` - + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ShopLoginConfirmModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `url` | `string` | 登录二维码URL | + +--- + +### 15.2 `POST /shop/ExtDeviceLoginConfirmOk` - + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ShopLoginConfirmModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `url` | `string` | 登录二维码URL | + +--- + +### 15.3 `POST /shop/ScanQrcodeEventReport` - + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ShopLoginConfirmModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `url` | `string` | 登录二维码URL | + +--- + +### 15.4 `POST /shop/ShopLoginConfirm` - 微信小店确认登录 + +- 套餐:**定制版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ShopLoginConfirmModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `url` | `string` | 登录二维码URL | + +--- + +## 16. 其他(8 个接口) + +### 16.1 `POST /other/GetPeopleNearby` - 查看附近的人 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (PeopleNearbyModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Latitude` | `number(double)` | - | +| `Longitude` | `number(double)` | - | + +--- + +### 16.2 `GET /other/GetProjectFullPath` - 获取项目完整路径 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 16.3 `POST /other/GetRedisSyncMsg` - 获取缓存在redis中的消息 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 16.4 `POST /other/GetUserRankLikeCount` - 获取步数排行数据列表 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UserRankLikeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `RankId` | `string` | - | + +--- + +### 16.5 `POST /other/QWImageDownload` - 企微图片下载 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DownloadQWImageModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `xml` | `string` | - | + +--- + +### 16.6 `POST /other/UpdateCmdStatus` - 更新指令状态, key 为指令 id,Value 为指令状态 0|1,ValueStr 为字符串值 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (ModifyCmdStatusModelNew)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Key` | `string` | - | +| `Value` | `integer(int)` | - | +| `ValueStr` | `string` | - | + +--- + +### 16.7 `POST /other/UpdateStepNumber` - 修改步数 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UpdateStepNumberModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Number` | `integer(uint64)` | - | + +--- + +### 16.8 `POST /other/UploadAppAttach` - 上传文件 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (UploadAppAttachModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `fileData` | `string` | - | + +--- + +## 17. 同步消息(1 个接口) + +### 17.1 `GET /ws/GetSyncMsg` - 如果 "key" 有效,则调用 WebSocketHandler 进行后续处理。 + +- 套餐:**高级版** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +## 18. 管理/授权(9 个接口) + +### 18.1 `POST /admin/DelayAuthKey` - 授权码延期 + +- 套餐:**白标/OEM** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DelayAuthKeyModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Days` | `integer(int)` | AuthKey 的延期天数; Days 小于1默认设置为30 | +| `ExpiryDate` | `string` | AuthKey 的到期日期(例如: 2024-01-01); 与 Days 参数只能选其一(优先使用 ExpiryDate 参数) | +| `Key` | `string` | 要延期的 AuthKey | + +--- + +### 18.2 `POST /admin/DeleteAuthKey` - 删除授权码 + +- 套餐:**白标/OEM** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (DeleteAuthKeyModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Key` | `string` | 要删除的 AuthKey | +| `Opt` | `integer(int)` | 删除操作 0:仅删除授权码 1:删除授权码相关的所有数据 | + +--- + +### 18.3 `POST /admin/DisableAuthKey` - 禁用授权码 + +- 套餐:**白标/OEM** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (BannedAuthKeyModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `IsBanned` | `integer(int)` | isBanned 1 禁用 默认设置为0 | +| `Key` | `string` | 要禁用的 AuthKey | + +--- + +### 18.4 `POST /admin/GenAuthKey1` - 生成授权码(新设备) + +- 套餐:**白标/OEM** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GenAuthKeyModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Count` | `integer(int)` | 要生成 AuthKey 的个数; Count小于1默认设置为1 | +| `Days` | `integer(int)` | AuthKey 的过期天数; Days小于1默认设置为30 | + +--- + +### 18.5 `GET /admin/GenAuthKey2` - 生成授权码(新设备) + +- 套餐:**白标/OEM** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 18.6 `POST /admin/GenAuthKey3` - 生成授权码(1-日 7-周 30-月 90-季 180-半年 365-年 30000-永久)此key不使用无过期时间 + +- 套餐:**白标/OEM** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +**请求体 (GenAuthKeyTypeModel)** + +| 字段名 | 类型 | 说明 | +|---|---|---| +| `Count` | `integer(int)` | 要生成 AuthKey 的个数; Count小于1默认设置为1 | +| `Type` | `integer(int)` | 类型 1日 7 周 30月 90季 180 半年 365年 30000永久(数字为标识,非准确天数) | + +--- + +### 18.7 `GET /admin/GetActiveLicenseKeys` - 查询所有激活状态的卡密 + +- 套餐:**白标/OEM** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 18.8 `GET /admin/GetProxyMappingList` - 获取代理映射列表 + +- 套餐:**白标/OEM** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- + +### 18.9 `GET /admin/HttpSyncLicenseKey` - 同步卡密激活状态, HTTP-轮询方式 + +- 套餐:**白标/OEM** + +**Query 参数** + +| 参数名 | 类型 | 说明 | +|---|---|---| +| `key` | string | 账号唯一标识 | + +--- diff --git a/_docs/_gen_api_doc.js b/_docs/_gen_api_doc.js new file mode 100644 index 0000000..c3abb6c --- /dev/null +++ b/_docs/_gen_api_doc.js @@ -0,0 +1,162 @@ +/** + * 从 swagger.json 生成带参数的 API 接口清单 MD 文档 + * 用法: node _docs/_gen_api_doc.js + */ +const fs = require("fs"); +const path = require("path"); + +const swagger = require("./swagger.json"); +const mdRaw = fs.readFileSync(path.join(__dirname, "接口说明文档-完整版-含营销等级.md"), "utf8"); + +// ========== 1. 解析套餐映射 ========== +const planMap = {}; +let curPath = ""; +for (const line of mdRaw.split("\n")) { + const m = line.match(/####.*`(POST|GET)\s+(.+?)`/); + if (m) { curPath = m[2].trim(); continue; } + const p = line.match(/对应套餐:\*\*(.+?)\*\*/); + if (p && curPath) { planMap[curPath] = p[1]; curPath = ""; } +} + +// ========== 2. 解析 definitions ========== +function resolveRef(ref) { + if (!ref) return null; + const name = ref.replace("#/definitions/", ""); + return swagger.definitions[name] || null; +} + +function resolveType(prop) { + if (!prop) return "any"; + if (prop.$ref) { + const name = prop.$ref.replace("#/definitions/", ""); + return name; + } + if (prop.type === "array") { + if (prop.items) { + if (prop.items.$ref) return resolveType(prop.items) + "[]"; + return (prop.items.type || "any") + "[]"; + } + return "array"; + } + let t = prop.type || "any"; + if (prop.format) t += `(${prop.format})`; + return t; +} + +function getModelFields(def) { + if (!def || !def.properties) return []; + const fields = []; + for (const [name, prop] of Object.entries(def.properties)) { + fields.push({ + name, + type: resolveType(prop), + desc: (prop.description || "").trim() || "-", + }); + } + return fields; +} + +// ========== 3. 按 tag 分组 ========== +const tagNameMap = { "朋友": "好友", "/shop": "微信小店", "管理": "管理/授权" }; +function normTag(t) { return tagNameMap[t] || t; } + +const tagOrder = [ + "登录", "用户", "好友", "标签", "消息", "消息回调", + "群管理", "朋友圈", "收藏", "支付", "公众号/小程序", + "企业微信", "视频号", "设备", "微信小店", "其他", "同步消息", "管理/授权", +]; + +const groups = {}; +for (const [apiPath, methods] of Object.entries(swagger.paths)) { + for (const [method, spec] of Object.entries(methods)) { + const tag = (spec.tags && spec.tags[0]) || "未分类"; + if (!groups[tag]) groups[tag] = []; + + const params = spec.parameters || []; + const queryParams = params.filter((p) => p.in === "query"); + const bodyParam = params.find((p) => p.in === "body"); + + let bodyModelName = ""; + let bodyFields = []; + if (bodyParam && bodyParam.schema && bodyParam.schema.$ref) { + bodyModelName = bodyParam.schema.$ref.replace("#/definitions/", ""); + const def = resolveRef(bodyParam.schema.$ref); + bodyFields = getModelFields(def); + } + + groups[tag].push({ + method: method.toUpperCase(), + path: apiPath, + summary: spec.summary || "", + plan: planMap[apiPath] || "-", + queryParams, + bodyModelName, + bodyFields, + }); + } +} + +const sortedTags = Object.keys(groups).sort((a, b) => { + const ia = tagOrder.indexOf(normTag(a)); + const ib = tagOrder.indexOf(normTag(b)); + return (ia === -1 ? 99 : ia) - (ib === -1 ? 99 : ib); +}); + +// ========== 4. 生成 MD ========== +const totalApis = Object.values(groups).reduce((s, a) => s + a.length, 0); +const planCount = {}; +for (const apis of Object.values(groups)) { + for (const a of apis) { + planCount[a.plan] = (planCount[a.plan] || 0) + 1; + } +} + +let out = "# API 接口清单(按模块)\n\n"; +out += `> 接口总数:**${totalApis}**\n\n`; + +out += "## 套餐统计\n\n"; +out += "| 套餐 | 接口数 |\n|---|---:|\n"; +for (const p of ["初级版", "高级版", "定制版", "白标/OEM"]) { + if (planCount[p]) out += `| ${p} | ${planCount[p]} |\n`; +} +out += "\n---\n\n"; + +let secIdx = 0; +for (const tag of sortedTags) { + const apis = groups[tag]; + secIdx++; + const displayTag = normTag(tag); + out += `## ${secIdx}. ${displayTag}(${apis.length} 个接口)\n\n`; + + apis.forEach((a, i) => { + const num = `${secIdx}.${i + 1}`; + out += `### ${num} \`${a.method} ${a.path}\` - ${a.summary}\n\n`; + out += `- 套餐:**${a.plan}**\n\n`; + + // Query 参数 + if (a.queryParams.length > 0) { + out += "**Query 参数**\n\n"; + out += "| 参数名 | 类型 | 说明 |\n|---|---|---|\n"; + for (const q of a.queryParams) { + out += `| \`${q.name}\` | ${q.type || "string"} | ${q.description || "-"} |\n`; + } + out += "\n"; + } + + // Body 请求体 + if (a.bodyFields.length > 0) { + out += `**请求体 (${a.bodyModelName})**\n\n`; + out += "| 字段名 | 类型 | 说明 |\n|---|---|---|\n"; + for (const f of a.bodyFields) { + out += `| \`${f.name}\` | \`${f.type}\` | ${f.desc} |\n`; + } + out += "\n"; + } + + out += "---\n\n"; + }); +} + +const outPath = path.join(__dirname, "API接口清单-按模块.md"); +fs.writeFileSync(outPath, out, "utf8"); +console.log(`done: ${outPath}, ${out.split("\n").length} lines`); diff --git a/admin/src/views/subscription/plans.vue b/admin/src/views/subscription/plans.vue index c9c1955..75e1c2a 100644 --- a/admin/src/views/subscription/plans.vue +++ b/admin/src/views/subscription/plans.vue @@ -74,9 +74,15 @@ + + + + + +