LinkedIn Marketing API v2.0.0调用adCreativesV2返回400错误如何解决
问题排查与解决步骤
1. 补充分页参数
adCreativesV2接口的单请求返回实体阈值远低于adCampaignGroups、adCampaigns等接口,未显式传分页参数时会直接触发全量拉取校验,这是你移除所有查询参数仍报错的核心原因:
- 必须在请求参数中添加
count和start分页参数,该接口官方限制单页count最大值为100,超过就会触发400报错,首次请求可设置start=0&count=100。 - 若总数据量超过100,可通过返回结果中的
paging.total字段判断总页数,后续请求每次将start递增100即可拉取全量数据。
2. 修正URN编码错误
你当前的URN编码不完整,urn:li:sponsoredCampaign:XXXX中的冒号需要完整编码为%3A,你现有写法里的urn%3li%3sponsoredCampaign%XXXX是错误的,会导致搜索条件失效,接口实际拉取全量广告创意,自然触发数量上限报错,正确的编码格式应为urn%3Ali%3AsponsoredCampaign%3AXXXXXXX。
3. 修正代码拼写错误
你现有代码中response = request.request存在拼写错误,应该调用你导入的requests库,修改为requests.request。
修正后请求示例
import requests access_token = "替换为你的access_token" # 替换为实际campaign urn的正确编码 campaign_urn_encoded = "urn%3Ali%3AsponsoredCampaign%3AXXXXXXX" # 补充分页参数 url = f'https://api.linkedin.com/v2/adCreativesV2?q=search&search=(campaigns:(values:List({campaign_urn_encoded})))&fields=campaign,id,reference,status,changeAuditStamps,type&count=100&start=0' response = requests.request( url=url, headers={ "X-Restli-Protocol-Version": "2.0.0", "Authorization": f"Bearer {access_token}" }, method="GET" )
内容的提问来源于stack exchange,提问作者Sprizgola
相关产品推荐
相关产品推荐

