【问题标题】:Any queries to the api.linkedin.com/v2/ return "Not enough permissions to access ..."对 api.linkedin.com/v2/ 的任何查询都会返回“没有足够的权限访问......”
【发布时间】:2018-04-08 04:45:44
【问题描述】:
  1. 我使用 Client IDClient Secret 在以下 URL 获得了 Access Token(范围:r_basicprofile rw_company_admin w_share):
  2. https://api.linkedin.com/v2/me 端点发出请求

    curl -H "Authorization: Bearer ACCESS_TOKEN"
        -H "Accept: application/json"
        -H "Content-Type: application/json"
        -H "X-Restli-Protocol-Version: 2.0.0" https://api.linkedin.com/v2/me
    
  3. 得到响应:

    {
        "serviceErrorCode": 100,
        "message": "Not enough permissions to access /me GET ",
        "status": 403
    }
    

https://api.linkedin.com/v2/ 的任何请求都会返回类似的错误响应

在官方文档中对标头有不同的要求:

但我都尝试了,但没有任何效果。

https://api.linkedin.com/v1/ 的请求(使用相同的令牌)成功返回数据。

请告诉我我做错了什么。

【问题讨论】:

  • 这可能对你有帮助 - github.com/Happyr/LinkedIn-API-client
  • 感谢您的帮助,但是这个 API 客户端并没有解决我的问题(我已成功通过 /v2/ 端点授权)。问题是任何对 /v2/ 接收数据的请求(不包括授权请求)都会返回错误。
  • 您找到解决方案了吗?我遇到了同样的错误。
  • 对不起。还没有消息。
  • 我也有同样的问题。 OAuth 可以正常完成,每个 v2 调用都会返回以下错误。我开始认为 LinkedIn API v2 坏了……有人知道吗? { "serviceErrorCode": 100, "message": "Not enough permissions to access /me GET ", "status": 403 }

标签: linkedin


【解决方案1】:

您需要向领英申请权限。

现在对 api.linkedin.com/v2/ 的所有请求都已成功传递给我!

在通过地址https://business.linkedin.com/marketing-solutions/marketing-partners/become-a-partner/marketing-developer-program 请求报价后,我们获得了许可(r_ad_campaignsrw_organization

在下面的地址留下请求,LinkedIn 会回复您。

祝你好运!

【讨论】:

  • 我们已经是合作伙伴并且拥有权限: r_basicprofile r_contactinfo r_emailaddress r_fullprofile r_network rw_company_admin rw_groups rw_nus w_messages w_share 这足以调用v2 api吗?我遇到了上面确切的 403 问题。
  • 访问/v2/me需要权限r_ad_campaignsrw_organization
  • 根据文档 (developer.linkedin.com/docs/guide/v2/people/profile-api#usage),访问 /v2/me 不需要权限 r_ad_campaigns 和 rw_organization。但也许值得写信给 LinkedIn 的技术支持。
  • @javadev 你解决了这个问题吗?我们是否必须再次申请“营销开发者计划”?
  • @DeviOS 根据这个:docs.microsoft.com/en-us/linkedin/consumer/integrations/…,你做到了。
【解决方案2】:

Authorization 的第一步中使用r_liteprofile 而不是r_basicprofile。 这将解决您的问题。

【讨论】:

  • @Vijay 在v2 你需要r_basicprofile 的权限
【解决方案3】:

API 访问已更改,您仅通过 1 次 API 调用收到的内容,现在必须重写以进行多次 API 调用

之前,使用范围“r_basicprofile, r_emailaddress”你可以得到

  • 用户基本信息,如姓名、位置等
  • LinkedIn 用户个人资料网址
  • 电子邮件
  • 头像图片

现在您可以使用“r_basicprofile”,只有当您在 partner program 中时,它才会为您获取用户 LinkedIn 公共 URL,而且不容易进入!

如果您想获得access_token,您可以使用它来获取基本的个人资料信息+电子邮件,现在您必须使用范围“r_liteprofile,r_emailaddress”来请求它

并使用这 3 个 API 调用来获取所有详细信息,遗憾的是没有 Linkedin 公共 URL(如果有人知道如何获取此信息,请发表评论,以便我修改答案)

  1. 个人资料 - https://api.linkedin.com/v2/me
  2. 电子邮件 - https://api.linkedin.com/v2/clientAwareMemberHandles?q=members&projection=(elements*(primary,type,handle~))
  3. 个人资料图片 - https://api.linkedin.com/v2/me?projection=(id,profilePicture(displayImage~:playableStreams))
  4. 公开个人资料网址 - 不可能!

访问令牌

使用此链接进行检索说明

https://docs.microsoft.com/en-us/linkedin/shared/authentication/client-credentials-flow?context=linkedin/consumer/context

【讨论】:

  • 我想获得 r_basicprofile 并尝试了很多方法,但还没有得到正确的解决方案!你有什么解决办法吗?
猜你喜欢
  • 2018-02-19
  • 1970-01-01
  • 2019-06-02
  • 1970-01-01
  • 1970-01-01
  • 2018-03-04
  • 2019-05-13
  • 1970-01-01
相关资源
最近更新 更多