tencent cloud

即时通信 IM

动态与公告
产品动态
公告
产品简介
产品概述
基本概念
应用场景
功能介绍
账号系统
用户资料与关系链
消息管理
群组相关
公众号系统
音视频通话 Call
使用限制
购买指南
计费概述
价格说明
购买指引
续费指引
停服说明
退费说明
开发指引
Demo 专区
开通服务
体验 Demo
快速跑通
下载中心
SDK & Demo 源码
更新日志
聊天互动(含 UI)
TUIKit 组件介绍
快速开始
全功能接入
单功能接入
AI 集成
构建基础界面
更多特性
定义外观
国际化界面语言
推送服务(Push)
服务概述
名词解释
开通服务
快速跑通
厂商通道
数据统计
排查工具
客户端 API
服务端 API
推送回调
高级功能
更新日志
错误码
常见问题
智能客服
功能概述
快速入门
集成指引
管理员操作手册
客服操作手册
更多实践
直播间搭建
AI 聊天机器人方案
超大娱乐协作社群
Discord 实现指南
游戏内集成 Chat 指南
类 WhatsApp Channel 搭建方案
发送红包
Chat 应对防火墙限制相关
无 UI 集成
快速开始
集成 SDK
初始化
登录登出
消息相关
会话相关
群组相关
社群话题
用户管理
离线推送
云端搜索
本地搜索
公众号
客户端 API
JavaScript
Android
iOS & macOS
Swift
Flutter
Electron
Unity
React Native
C 接口
C++
服务端 API
生成 UserSig
REST API
第三方回调
控制台指南
新版控制台介绍
创建并升级应用
基本配置
功能配置
账号管理
群组管理
公众号管理
回调配置
用量统计
资源包查看指南
实时监控
开发辅助工具
访问管理
高级功能
常见问题
uni-app 常见问题
购买相关问题
SDK 相关问题
账号鉴权相关问题
用户资料与关系链相关问题
消息相关问题
群组相关问题
直播群相关问题
昵称头像相关问题
协议与认证
服务等级协议
安全合规认证
IM 政策
隐私政策
数据隐私和安全协议
平滑迁移方案
平滑迁移完整版
平滑迁移简化版
错误码
联系我们

拉取公众号用户历史消息

PDF
聚焦模式
字号
最后更新时间: 2025-10-23 10:35:09

背景说明

即时通信 Chat 的公众号消息是按 Seq 排序的,按照 server 收到公众号消息的顺序分配 Seq,先发的公众号消息 Seq 小,后发的 Seq 大。
即时通信 Chat 会给每条公众号消息生成一个 MsgKey,格式为 "Seq_1_ServerTime"。
如果用户想拉取一个公众号的全量消息,需要填写消息的 LastMsgKey,首次拉取时不用填拉取 LastMsgKey,Server 会自动返回最新的消息,以后拉取时拉取 LastMsgKey 填上次请求返回 LastMsgKey。
如果返回消息的 IsPlaceMsg 为1,表示这个 Seq 的消息或者过期、或者存储失败、或者被删除了。

功能说明

App 管理员可以通过该接口拉取公众号的历史消息。

接口调用说明

请求 URL 示例

https://xxxxxx/v4/official_account_open_http_svc/official_account_msg_get_simple?sdkappid=88888888&identifier=admin&usersig=xxx&random=99999999&contenttype=json

请求参数说明

下表仅列出调用本接口时涉及修改的参数及其说明,更多参数详情请参考 REST API 简介
参数
说明
xxxxxx
SDKAppID 所在国家/地区对应的专属域名:
中国:console.tim.qq.com
新加坡:adminapisgp.im.qcloud.com
首尔: adminapikr.im.qcloud.com
东京:adminapijpn.im.qcloud.com
法兰克福:adminapiger.im.qcloud.com
硅谷:adminapiusa.im.qcloud.com
雅加达:adminapiidn.im.qcloud.com
v4/official_account_open_http_svc/official_account_msg_get_simple
请求接口
sdkappid
创建应用时即时通信 Chat 控制台分配的 SDKAppID
identifier
必须为 App 管理员账号,更多详情请参见 App 管理员
usersig
App 管理员账号生成的签名,具体操作请参见 生成 UserSig
random
请输入随机的32位无符号整数,取值范围0 - 4294967295
contenttype
请求格式固定值为json

最高调用频率

200次/秒。

请求包示例

基础形式 拉取公众号的历史消息,返回公众号最新的 ReqMsgNumber 条消息。
{
"Official_Account": "@TOA#_15ERQPAER", //拉取消息的公众号用户
"ReqMsgNumber": 2 //需要拉取的消息条数
}
LastMsgKey 续拉 返回早于指定 LastMsgKey 之前的消息。
{
"Official_Account": "@TOA#_15ERQPAER",
"LastMsgKey": "71_1_1698741698", // 续拉 MsgKey
"ReqMsgNumber": 2
}

请求包字段说明

字段
类型
属性
说明
Official_Account
String
必填
要拉取历史消息的公众号用户
LastMsgKey
String
选填
上一次拉取到的最后一条消息的 MsgKey,续拉时需要填该字段,填写方法见上方 示例
ReqMsgNumber
Integer
选填
请求的消息条数
WithRecalledMsg
Integer
选填
是否带撤回的消息,填1表明需要拉取撤回后的消息;默认不拉取撤回后的消息

应答包体示例

{
"ActionStatus": "OK",
"ErrorInfo": "",
"ErrorCode": 0,
"Official_Account": "@TOA#_15ERQPAER",
"IsFinished": 1,
"LastMsgKey": "71_1_1698741698"
"RspMsgList": [
{
"From_Account": "144115197276518801",
"IsPlaceMsg": 0,
"MsgBody": [
{
"MsgContent": {
"Data": "\\b\\u0001\\u0010\\u0006\\u001A\\u0006猫瞳",
"Desc": "MIF",
"Ext": ""
},
"MsgType": "TIMCustomElem"
},
{
"MsgContent": {
"Data": "",
"Index": 15
},
"MsgType": "TIMFaceElem"
}
],
"MsgSeq": 71,
"MsgKey" :"71_1_1698741698"
"MsgTimeStamp": 1698741698
},
{
"From_Account": "144115198339527735",
"IsPlaceMsg": 0,
"MsgBody": [
{
"MsgContent": {
"Data": "\\b\\u0001\\u0010\\u0006\\u001A\\u000F西瓜妹妹。",
"Desc": "MIF",
"Ext": ""
},
"MsgType": "TIMCustomElem"
},
{
"MsgContent": {
"Text": "报上来"
},
"MsgType": "TIMTextElem"
}
],
"MsgSeq": 72,
"MsgKey" :"72_1_1698741700"
"MsgTimeStamp": 1698741700
}
]
}

应答包字段说明

字段
类型
说明
ActionStatus
String
请求处理的结果:
OK:表示处理成功
FAIL:表示失败
ErrorInfo
String
错误信息
ErrorCode
Integer
错误码:
0:表示成功
非0:表示失败
Official_Account
String
请求中的公众号用户
IsFinished
Integer
是否返回了请求区间的全部消息
当成功返回了请求区间的全部消息时,值为1
当消息长度太长或者区间太大(超过20)导致无法返回全部消息时,值为0
当请求区间之前的所有消息都过期时,值为2
RspMsgList
Array
返回的消息列表
IsPlaceMsg
Integer
是否是空洞消息,当消息被删除或者消息过期后:
MsgBody 为空,该字段为1
撤回的消息,该字段为2
MsgKey
String
标识该条消息,可用于 撤回公众号消息
MsgSeq
Integer
消息 seq,用于标识唯一消息,值越小发送的越早
MsgTimeStamp
Integer
消息被发送的时间戳(单位:秒),server 的时间
MsgBody
Object / Array
消息内容,详情请参见 消息内容 MsgBody 说明

错误码说明

除非发生网络错误(例如502错误),否则该接口的 HTTP 返回码均为200。真正的错误码,错误信息是通过应答包体中的 ErrorCode、ErrorInfo 来表示的。 公共错误码(60000到79999)参见 错误码 文档。 本 API 私有错误码如下:
错误码
描述
10002
服务器内部错误,请重试
10003
请求命令字非法
10004
参数非法,请根据错误描述检查请求是否正确
10007
操作权限不足,操作人必须为该公众号中有权限执行对应操作的角色
10010
公众号用户不存在,或者曾经存在过,但是目前已经被解散
10015
公众号用户 ID 非法,请检查公众号用户 ID 是否填写正确

接口调试工具

通过 REST API 在线调试工具 调试本接口。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈