如何通过LinkedIn API获取其他成员资料?权限报错问题求助
LinkedIn API权限不足问题排查与解决
- 先明确权限匹配关系:你当前使用的
openid、profile、email、member_social权限,均无法访问/v2/people/(id:{person ID})和clientAwareMemberHandles接口。获取基础公开资料需要r_liteprofile权限,完整资料需r_fullprofile(需LinkedIn审核);通过邮箱关联用户ID则需要r_emailaddress+r_liteprofile组合权限,且clientAwareMemberHandles接口还需应用通过对应权限审核。 - 重新走授权流程:就算你在应用后台添加了新权限,旧的access token不会自动更新权限,必须让用户重新授权你的应用,授权时要在请求里明确带上所需的权限范围(比如授权URL里包含
scope=r_liteprofile%20r_emailaddress)。 - 验证token权限有效性:可以调用两个基础接口测试:
- 调用
https://api.linkedin.com/v2/me?projection=(id,firstName,lastName),能返回数据说明r_liteprofile权限生效; - 调用
https://api.linkedin.com/v2/emailAddress?q=members&projection=(elements*(handle~)),能返回邮箱说明r_emailaddress权限生效。
也可以通过LinkedIn的token校验工具查看当前token实际包含的权限列表,确认是否有你需要的权限。
- 调用
- 注意接口使用限制:
/v2/people/(id:{person ID})接口已被官方逐步弃用,推荐用/v2/me获取当前授权用户的资料,或用/v2/people配合正确的projection参数获取其他用户资料(需对应权限);clientAwareMemberHandles接口默认仅允许查找当前授权用户自己的邮箱对应的handle,不能直接查询其他用户,除非你的应用有特殊权限且通过LinkedIn审核。
内容的提问来源于stack exchange,提问作者Priyadharshini Balaji
相关产品推荐
相关产品推荐

