You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取LinkedIn用户URN并解决/userinfo接口403权限问题

解决LinkedIn API权限不足及获取用户URN问题

核心问题拆解

你现在碰到两个关键问题:调用userinfo接口返回403权限不足,以及拿不到用户URN来实现内容分享。本质是权限范围用错了,而且选的接口不符合LinkedIn V2 API规范。

一步步解决

1. 替换过时的权限范围

LinkedIn V2 API已弃用旧的profile权限,必须换成V2对应的权限:

  • 把原授权链接里的profile改为r_liteprofile(该权限用于获取用户基本信息,包括URN)
  • 保留w_member_social(发布内容到用户主页的必填权限)、r_emailaddress(如需获取用户邮箱则保留)、openid(仅使用OIDC相关功能时需要)

更新后的授权请求链接:

https://www.linkedin.com/oauth/v2/authorization?response_type=code&client_id=${clientId}&redirect_uri=${redirectUri}&state=123456&scope=r_liteprofile%20r_emailaddress%20w_member_social%20openid

2. 用正确接口获取用户URN

无需调用userinfo,直接使用v2/me接口即可拿到用户URN(返回结果中的id字段即为用户URN):

  • 请求方式:GET
  • 请求头:Authorization: Bearer {你的access_token}
  • 请求地址:https://api.linkedin.com/v2/me

响应示例:

{
  "id": "urn:li:person:abc123XYZ",
  "firstName": {
    "localized": {
      "en_US": "John"
    }
  },
  "lastName": {
    "localized": {
      "en_US": "Doe"
    }
  }
}

3. 检查应用后台权限配置

如果替换权限后仍出现权限问题,需登录LinkedIn应用后台核对:

  • 进入「Products」页面,确认已添加「Share on LinkedIn」(对应w_member_social权限)和「Sign In with LinkedIn」(对应r_liteprofile、openid权限)产品
  • 提交应用审核:w_member_social这类权限必须通过LinkedIn审核才能对普通用户生效,未审核通过时仅测试账号可调用

4. 使用URN实现内容分享

拿到用户URN后,调用v2/shares接口即可发布内容到用户主页,示例请求:

  • 请求方式:POST
  • 请求头:Authorization: Bearer {你的access_token}、Content-Type: application/json
  • 请求地址:https://api.linkedin.com/v2/shares
  • 请求体示例:
{
  "owner": "urn:li:person:abc123XYZ", // 替换为实际获取到的用户URN
  "text": {
    "text": "通过第三方应用分享的测试内容"
  },
  "distribution": {
    "linkedInDistributionTarget": {}
  }
}

内容的提问来源于stack exchange,提问作者Anatolii Landyshev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 03:52:44