
viber 官方对 bot 的免费消息发送额度设为每月 10,000 条(chatbot-initiated),超出后将返回 status=23 错误;本文解析配额规则、排查方法及合规优化建议。
viber 官方对 bot 的免费消息发送额度设为每月 10,000 条(chatbot-initiated),超出后将返回 status=23 错误;本文解析配额规则、排查方法及合规优化建议。
Viber Bot 的广播消息(/pa/broadcast_message)并非完全免费无限使用。根据 Viber 官方技术文档(Terms & Conditions)的隐含说明,每个认证 Bot 账户享有 每月 10,000 条 chatbot-initiated 消息 的免费额度——即由 Bot 主动发起的、非用户触发的推送类消息(如广播、定时通知、营销活动等),不包括用户主动发送后的 Bot 回复(session-based replies)。
您遇到的错误响应:
{
"status": 23,
"status_message": "maximum free messages from Bot exceeded",
"message_token": "5748679331176400537",
"chat_hostname": "SN-CHAT-02_"
}正是该月度配额耗尽的明确标识。需注意:
✅ 配额按自然月重置(每月 1 日 00:00 UTC 重置);
✅ 所有 /pa/broadcast_message、/pa/send_message(非会话上下文)及 /pa/postback 触发的主动推送均计入此限额;
❌ 用户首次点击“Start”或发送消息后 Bot 的即时回复(within 15-min session window)不计入该配额。
如何确认当前用量?
Viber 未提供实时用量 API 或控制台仪表盘,但可通过以下方式自查:
- 在服务端记录每次成功调用
broadcast_message的时间戳与目标用户数(注意:1 次广播请求若含 300 个 recipient ID,则计为 300 条消息); - 建议建立本地配额追踪器,例如使用 Redis 计数器 + 按月 key(如
viber_quota_202406),并在每次发送前校验剩余量; - 若使用第三方 SDK(如
viber-bot-node),检查其是否内置配额拦截逻辑,否则需自行封装防护层。
合规优化建议
-
优先使用会话内响应:对已互动用户,利用
sender_id在 15 分钟窗口期内多次回复,规避配额消耗; - 合并广播内容:避免高频小批量发送(如每小时发 300 条 × 2 次),改为单次大批次(≤ 500 recipients/request)并降低频次;
-
启用用户订阅机制:通过
subscribe按钮引导用户显式授权接收推送,提升消息打开率与转化,间接降低无效触达; - 商务升级路径:若业务确需超量推送,需联系 Viber 商务团队(business@viber.com)开通付费通道,按实际发送量计费(费率依区域与合约而定)。
⚠️ 注意:切勿尝试伪造
sender_id或滥用测试账号绕过配额——Viber 服务端会对消息来源、频率及行为模式进行风控识别,违规可能导致 Bot 账户临时封禁或审核驳回。
合理规划消息节奏、强化用户分层运营,是长期稳定使用 Viber Bot 的关键。建议将月度 10,000 条视为“高价值触达预算”,聚焦精准人群与强相关场景,而非广撒网式推送。

















