新版LinkedIn Posts API示例代码运行报错咨询
LinkedIn Posts API个人发帖报错解决方案
报错根因
核心配置错误导致接口判定你要创建广告暗帖(Direct Sponsored Content),触发强制字段校验:
- 照搬示例的
distribution.feedDistribution: "NONE"配置。该配置仅对广告暗帖生效,这类内容不会出现在公开信息流中,必须绑定广告账户,因此接口要求传入adContext.dscAdAccount字段。 - 手动传入只读字段触发校验错误。
adContext.isDsc是接口返回字段,由后端根据请求参数自动判定,创建请求中传入该字段(包括传false、传空adContext对象)都会直接被拦截。 - 额外排查点:确认你的Access Token权限匹配。以个人账号
urn:li:person:{id}作为作者发普通帖子,Token必须包含w_member_social权限;如果Token是企业发帖/广告操作类权限,即使传入个人URN,接口也会按广告内容逻辑校验。
修复方法
直接调整请求参数,删除所有adContext相关字段,将feedDistribution值改为MAIN_FEED即可,参考可用请求示例:
curl -X POST 'https://api.linkedin.com/rest/posts' \ -H 'Authorization: Bearer {替换为你的有效个人权限Token}' \ -H 'X-Restli-Protocol-Version: 2.0.0' \ -H 'LinkedIn-Version: {替换为有效版本号,格式为YYYYMM,比如202405}' \ -H 'Content-Type: application/json' \ --data '{ "author": "urn:li:person:{替换为你的个人账号ID}", "commentary": "替换为你要发布的帖子正文内容", "visibility": "PUBLIC", "distribution": { "feedDistribution": "MAIN_FEED", "targetEntities": [], "thirdPartyDistributionChannels": [] }, "lifecycleState": "PUBLISHED", "isReshareDisabledByAuthor": false }'
补充:如果你的需求确实是创建广告暗帖,才需要保留
feedDistribution: "NONE"配置,同时补充广告账户字段:"adContext": {"dscAdAccount": "urn:li:sponsoredAccount:{你的广告账户ID}"},此时Token需要拥有对应广告账户的操作权限。
内容的提问来源于stack exchange,提问作者user1715481
相关产品推荐
相关产品推荐

