求适用于所有认证用户的LinkedIn API:判断当日是否发布原生帖子
解决方案
适用个人用户的API调用方案
针对已完成OAuth2认证的个人用户X,你可以通过LinkedIn的UGC Posts API实现当日原生帖子检查需求,具体步骤如下:
1. 获取用户标识(若已存储可跳过)
认证成功后,调用/me端点获取用户X的ID:
GET https://api.linkedin.com/v2/me Headers: Authorization: Bearer {你的访问令牌}
返回结果中的id字段即为用户的唯一标识。
2. 查询当日原生帖子
调用UGC Posts查询接口,过滤该用户发布的内容:
GET https://api.linkedin.com/v2/ugcPosts?q=author&author=urn:li:person:{用户X的ID}&start=0&count=10 Headers: Authorization: Bearer {你的访问令牌} X-Restli-Protocol-Version: 2.0.0
结果处理逻辑:
- 遍历返回的每一条
ugcPost数据,提取created字段(UTC时区的ISO 8601格式时间) - 将该时间转换为你需要的时区(或直接按UTC日期判断),检查是否属于当日
- 筛选
postType为STANDARD的内容(这是原生原创帖子,排除转发、分享类内容) - 只要存在至少一条符合条件的帖子,返回
True,否则返回False
关键权限与注意事项
- 认证时必须申请
r_member_social只读权限(若需要发布则用w_member_social,你的需求只需前者) - 务必处理时区差异,避免因UTC时间和本地日期不匹配导致误判
- 优先使用UGC Posts API而非旧版Share API,前者对个人用户的支持更完善
简化替代方案
如果需求简单,也可以用旧版的/me/shares端点快速查询:
GET https://api.linkedin.com/v2/shares?q=owners&owners=urn:li:person:{用户X的ID}&count=5 Headers: Authorization: Bearer {你的访问令牌}
提取createdTime字段进行当日判断即可,但此接口对内容类型的区分度不如UGC API,建议优先选择新版方案。
内容的提问来源于stack exchange,提问作者C RICH
相关产品推荐
相关产品推荐

