调用LinkedIn API /adCampaigns返回“参数含未授权字段”问题求助
解决LinkedIn adCampaigns API参数未授权问题
问题核心
调用LinkedIn v2版本/adCampaigns API时收到403错误,提示Unpermitted fields present in PARAMETER,涉及参数/search.status.values[0], /sort.field, /sort.order,但v1版本请求正常,且访问令牌有效、应用已配置相关权限。
解决方案
1. 修正参数格式(核心问题)
LinkedIn v2 API基于Restli 2.0协议,参数格式与v1存在差异,你的请求写法不符合v2规范:
- 数组参数:v2中数组参数无需带索引
[0],直接用参数名传递即可,将search.status.values[0]=ACTIVE改为search.status.values=ACTIVE; - 排序参数:v2中排序参数需合并为单个
sort参数,格式为sort=(field:字段名,order:排序方向),替换原分开的sort.field和sort.order。
修正后的请求URL:
GET https://api.linkedin.com/rest/adCampaigns?q=search&search.type.values=SPONSORED_UPDATES&search.status.values=ACTIVE&sort=(field:ID,order:DESCENDING)
2. 核对API版本兼容性
当前使用Linkedin-Version: 202206,可确认该版本的adCampaigns搜索端点是否支持上述参数。若问题仍存在,尝试升级为文档中使用的202207版本(修改请求头的Linkedin-Version值)。
3. 二次验证权限配置
虽然v1请求正常,但v2 API权限校验更严格:确认应用已正确配置r_ads权限(访问广告营销数据的核心权限),且令牌生成时已申请该权限(仅应用配置权限但令牌未包含也会触发错误)。
内容的提问来源于stack exchange,提问作者Chris Horn
相关产品推荐
相关产品推荐

