LinkedIn API 请求失败,并显示“RESOURCE_KEY 中存在不允许的字段:处理字段 [/memberId] 时出现数据处理异常”

Aug*_*ias 5 linkedin-api

我正在尝试以下请求:

GET https://api.linkedin.com/v2/people/(id:urn:li:person:<person id>)?oauth2_access_token=<token>&projection=(results*(localizedFirstName,vanityName))
Run Code Online (Sandbox Code Playgroud)

但我总是得到:

{
    "serviceErrorCode": 100,
    "message": "Unpermitted fields present in RESOURCE_KEY: Data Processing Exception while processing fields [/memberId]",
    "status": 403
}
Run Code Online (Sandbox Code Playgroud)

如果我尝试使用替代 API 来执行此操作:

GET https://api.linkedin.com/v2/people?ids=List((id:urn:li:person:<person id>))&oauth2_access_token=<token>&projection=(results*(localizedFirstName,vanityName))
Run Code Online (Sandbox Code Playgroud)

返回内部服务器错误:

{
    "message": "Internal Server Error",
    "status": 500
}
Run Code Online (Sandbox Code Playgroud)

我正在使用 Google Chrome 来执行这些请求。

我也尝试过使用邮递员。

标题:

X-Restli-Protocol-Version: 2.0.0
Authorization: Bearer <token>
Run Code Online (Sandbox Code Playgroud)

得到:

{
    "serviceErrorCode": 0,
    "message": "Syntax exception in path variables",
    "status": 400
}
Run Code Online (Sandbox Code Playgroud)

我的应用程序权限是:

  • r_电子邮件地址
  • r_广告
  • w_组织_社会
  • 读写广告
  • r_基本配置文件
  • r_liteprofile
  • r_ads_报告
  • r_组织_社会
  • rw_组织_管理
  • w_member_social

我尝试了其他 API(socialActivity、ugcPosts),一切看起来都很好。

我检查了我的 API 使用情况,https://www.linkedin.com/developers/apps/<id>/usage目前people使用率为 0%。

测试的用户资料也是公开的。

Mat*_*teo 3

您应该只使用 id(而不是 urn)。字段投影也是错误的

使用:

projection=(localizedFirstName,vanityName)
Run Code Online (Sandbox Code Playgroud)

代替:

projection=(results*(localizedFirstName,vanityName))
Run Code Online (Sandbox Code Playgroud)

例如:

curl -H "X-Restli-Protocol-Version: 2.0.0" \
"https://api.linkedin.com/v2/me?oauth2_access_token=<TOKEN>&projection=(id)"
Run Code Online (Sandbox Code Playgroud)

将返回

{
  "id": <ID>
}
Run Code Online (Sandbox Code Playgroud)

并将其用作:

curl -H "X-Restli-Protocol-Version: 2.0.0" \
"https://api.linkedin.com/v2/people/(id:<ID>)?oauth2_access_token=<TOKEN>&projection=(localizedFirstName,vanityName)"
Run Code Online (Sandbox Code Playgroud)

所以:

{
  "vanityName": "<VANITY-NAME>",
  "localizedFirstName": "<NAME>"
}
Run Code Online (Sandbox Code Playgroud)

希望这有帮助