Skip to content

客户朋友圈

发圈、列表、详情、点赞、评论、删除、签名。

本模块接口全部 POST,请求地址 = {BASE_URL} + 路径。

接口用途安全级别
发布朋友圈
/wx-api/api/friend/sendSns
用当前账号发一条客户朋友圈,支持纯文本 / 图文 / 视频 + 可见范围 + 位置。写操作
获取朋友圈列表
/wx-api/api/friend/getSnsList
分页拉取本账号可见的朋友圈动态流(自己 + 客户)。只读
设置朋友圈签名
/wx-api/api/friend/setSnsSignature
设置本账号的「朋友圈签名」(个性签名文案)。写操作
朋友圈点赞
/wx-api/api/friend/likeSns
对某条朋友圈动态点赞 / 取消点赞。写操作
获取朋友圈详情
/wx-api/api/friend/getSnsDetails
按单个 sid 查一条朋友圈动态的完整详情(含点赞、评论、已删评论、可见范围)。只读
发布朋友圈评论
/wx-api/api/friend/commentSns
对某条朋友圈动态发评论,或对某条评论追评(回复)。写操作
删除朋友圈评论
/wx-api/api/friend/deleteSnsComment
删除某条朋友圈动态下的一条评论。高风险
删除朋友圈
/wx-api/api/friend/deleteSns
删除本账号自己发布的一条朋友圈动态。高风险

安全级别与「实测 日期」标记的含义见接口总览的图例

朋友圈调用流程

  1. 发圈 = sendSns。可含文本(content)+ 媒体(mediaList,图/视频)+ 可见范围(xid)+ 位置(poiInfo)+ 链接(linkInfo)。
    • 媒体不能直接塞字节:图/视频要先经 CDN 大文件上传(cdn/uploadBigFile),等上传完成事件回来拿到 *1* 开头的 fileId,再把 {type,fileId,md5,size,...} 放进 mediaList。用 uploadImage/uploadVideo 拿到的十六进制 fileId 发不成媒体圈(会静默发成纯文本,回执照样 code:0)。
    • 发成后:新动态 id 在 data.postInfo.sid
  2. 浏览 = getSnsList(翻页拿动态流)→ 需要某条的完整点赞/评论时用 getSnsDetails(按单个 sid 查详情)。翻页游标是 seq(不是 maxId):首次传 0,下一页传上一页最后一条记录的 seq
  3. 互动 / 清理都以 sid(朋友圈动态 id)定位:
  4. 客户端侧的朋友圈变动(客户发圈 / 点赞 / 评论等)目前没有抓到对应的推送样本,回调字典里也没有朋友圈类型;本文只覆盖主动调用接口。

动态对象字段

getSnsList 的数组元素、getSnsDetailsdata,是同一种「朋友圈动态对象」:

字段类型含义
sidint64朋友圈动态 id(snsId),互动/删除均以它定位
authorVidint64发布者 uin/vid(自己发的 = 本账号 uin)
seqint64该动态的序列号,getSnsList 翻页游标取这个值
timeint发布时间戳(秒)
updateTimeint64最后更新时间戳(毫秒);有新评论/点赞会变
contentstring文字内容(明文 UTF-8,不是 base64)
typeint动态类型;0 = 普通(文本/图文)
flagint动态标志位:新发动态 flag=0deleteSnsflag 翻成 1,动态仍留在列表/详情里,不会立即消失
visibleTypeint可见类型,取值 0 / 1,含义以对接人说明为准
postIdstring动态的 base64 令牌(内部引用,非人类可读 id)
mediaListarray媒体列表(见下)
likeListarray点赞列表(见下)
commentListarray评论列表(见下)
deleteCommentListarray已删除的评论列表(结构同 commentList,flag=3)
linkInfoobject链接信息
poiInfoobject位置信息
xidarray<int64>可见范围 uin 列表(getSnsDetails 才有顶层 xid
  • mediaList[]{type, fileId, md5, size, width, height}type = 2 视频 / 3 图片。
  • likeList[]{xid, sid, time}xid = 点赞者 uin/vid,sid = 所属朋友圈 id,time = 点赞时间戳。
  • commentList[]{commentId, fromId, sid, time, postId, comment, flag}commentId 是评论 id(删评论用它);comment 是评论正文,base64 编码,需要解码后才是明文,与动态本身明文的 content 不同;flag = 2 正常评论,3 已删除。