使用AdSense Management API v2无法获取完整网站列表,该如何解决?
排查AdSense Management API v2网站列表不完整的问题
确认API请求参数范围
默认情况下accounts.adclients.list接口可能仅返回直接关联的广告客户端,若站点是通过AdSense自动检测添加的,要检查请求是否误加了过滤条件(比如仅筛选ACTIVE状态站点)。可尝试添加filter=status:ANY参数,获取所有状态的站点:GET https://www.googleapis.com/adsense/v2/accounts/{accountId}/adclients?filter=status:ANY遍历所有广告客户端的站点
API中站点是归属到广告客户端下的,需先获取所有广告客户端列表,再逐个调用accounts.adclients.sites.list接口拉取对应站点:GET https://www.googleapis.com/adsense/v2/accounts/{accountId}/adclients/{adClientId}/sites不要遗漏任何广告客户端,包括自动生成的默认客户端。
验证权限与账户ID正确性
确保OAuth2凭据申请了https://www.googleapis.com/auth/adsense或https://www.googleapis.com/auth/adsense.readonly权限;同时确认请求中的accountId是主账户的pub-xxxxxxxxxxxxxxxx格式ID,而非广告客户端ID。检查站点状态差异
控制面板会显示待验证、未启用广告的站点,但API默认可能仅返回ACTIVE状态的站点。对比API返回的status字段,确认是否有站点因状态未被筛选而遗漏。
内容的提问来源于stack exchange,提问作者zainsyedz
相关产品推荐
相关产品推荐

