获取Reddit Ads API报告时返回403 Forbidden问题求助
Reddit Ads API 获取报告时403 Forbidden 问题排查方案
核心排查方向及解决步骤
- 验证账户层级权限
即使Token返回scope: "*",也需确认授权账户拥有目标广告账户的读取报告权限。Reddit Ads权限基于账户层级,若授权账户不是目标广告账户的管理员/分析师,会触发403。 - 修正API请求端点
广告API需使用专属域名ads-api.reddit.com,而非通用的reddit.com。正确的报告接口URI示例:https://ads-api.reddit.com/api/v1/reports,错误端点会导致400/500/403混合错误。 - 校验请求参数合法性
部分403是参数错误伪装的权限问题:- 确认
account_id为有权访问的广告账户ID - 检查
start_date/end_date格式为YYYY-MM-DD - 确保报告类型(如
campaign/ad_group)是合法枚举值
- 确认
- 规范User-Agent格式
Reddit要求User-Agent必须包含应用名、版本、联系信息(示例:MyAdsReportTool/2.0 (dev@example.com)),禁止使用curl/PostmanRuntime等通用标识,即使已设置也需再次核对格式。 - 重新生成指定Scope的Token
避免依赖scope: "*",重新走授权流程,明确指定adsread,adsconversions,history三个scope。Reddit的*可能未完全覆盖广告API的专属权限集。 - 确认认证头格式
必须使用Authorization: Bearer {access_token}作为请求头,误用Basic认证会直接返回403。
额外排查项
- 检查应用是否通过Reddit审核并处于活跃状态,未审核应用无法访问广告API核心接口
- 若设置了IP白名单,确认当前请求IP在白名单范围内
内容的提问来源于stack exchange,提问作者OlivierB
相关产品推荐
相关产品推荐

