LinkedIn API 请求失败 "Unpermitted fields present in RESOURCE_KEY: Data Processing Exception while processing fields [/memberId]"
LinkedIn API request fails with "Unpermitted fields present in RESOURCE_KEY: Data Processing Exception while processing fields [/memberId]"
我正在尝试以下请求:
GET https://api.linkedin.com/v2/people/(id:urn:li:person:<person id>)?oauth2_access_token=<token>&projection=(results*(localizedFirstName,vanityName))
但我总是得到:
{
"serviceErrorCode": 100,
"message": "Unpermitted fields present in RESOURCE_KEY: Data Processing Exception while processing fields [/memberId]",
"status": 403
}
如果我尝试使用替代方案 API:
GET https://api.linkedin.com/v2/people?ids=List((id:urn:li:person:<person id>))&oauth2_access_token=<token>&projection=(results*(localizedFirstName,vanityName))
返回内部服务器错误:
{
"message": "Internal Server Error",
"status": 500
}
我正在使用 Google Chrome 来执行这些请求。
我也试过使用 Postman。
Headers:
X-Restli-Protocol-Version: 2.0.0
Authorization: Bearer <token>
得到:
{
"serviceErrorCode": 0,
"message": "Syntax exception in path variables",
"status": 400
}
我的应用权限是:
- r_emailaddress
- r_ads
- w_organization_social
- rw_ads
- r_basicprofile
- r_liteprofile
- r_ads_报告
- r_organization_social
- rw_organization_admin
- w_member_social
我尝试了其他 APIs(socialActivity、ugcPosts),一切正常。
我在 https://www.linkedin.com/developers/apps/<id>/usage
检查了我的 API 使用情况,people
使用情况目前为 0%。
测试的用户配置文件也是public。
id 参数只需要 person_id 但您提供 urn.Try 这个 https://api.linkedin.com/v2/people/(id:person_id) 并且不要忘记在 [=16= 中包含 X-RestLi-Protocol-Version:2.0.0 ] 正在打电话。
您应该只使用 id(而不是 urn)。 字段投影也是错误的:
使用:
projection=(localizedFirstName,vanityName)
而不是:
projection=(results*(localizedFirstName,vanityName))
例如:
curl -H "X-Restli-Protocol-Version: 2.0.0" \
"https://api.linkedin.com/v2/me?oauth2_access_token=<TOKEN>&projection=(id)"
会return
{
"id": <ID>
}
并将其用作:
curl -H "X-Restli-Protocol-Version: 2.0.0" \
"https://api.linkedin.com/v2/people/(id:<ID>)?oauth2_access_token=<TOKEN>&projection=(localizedFirstName,vanityName)"
所以:
{
"vanityName": "<VANITY-NAME>",
"localizedFirstName": "<NAME>"
}
希望对您有所帮助
我正在尝试以下请求:
GET https://api.linkedin.com/v2/people/(id:urn:li:person:<person id>)?oauth2_access_token=<token>&projection=(results*(localizedFirstName,vanityName))
但我总是得到:
{
"serviceErrorCode": 100,
"message": "Unpermitted fields present in RESOURCE_KEY: Data Processing Exception while processing fields [/memberId]",
"status": 403
}
如果我尝试使用替代方案 API:
GET https://api.linkedin.com/v2/people?ids=List((id:urn:li:person:<person id>))&oauth2_access_token=<token>&projection=(results*(localizedFirstName,vanityName))
返回内部服务器错误:
{
"message": "Internal Server Error",
"status": 500
}
我正在使用 Google Chrome 来执行这些请求。
我也试过使用 Postman。
Headers:
X-Restli-Protocol-Version: 2.0.0
Authorization: Bearer <token>
得到:
{
"serviceErrorCode": 0,
"message": "Syntax exception in path variables",
"status": 400
}
我的应用权限是:
- r_emailaddress
- r_ads
- w_organization_social
- rw_ads
- r_basicprofile
- r_liteprofile
- r_ads_报告
- r_organization_social
- rw_organization_admin
- w_member_social
我尝试了其他 APIs(socialActivity、ugcPosts),一切正常。
我在 https://www.linkedin.com/developers/apps/<id>/usage
检查了我的 API 使用情况,people
使用情况目前为 0%。
测试的用户配置文件也是public。
id 参数只需要 person_id 但您提供 urn.Try 这个 https://api.linkedin.com/v2/people/(id:person_id) 并且不要忘记在 [=16= 中包含 X-RestLi-Protocol-Version:2.0.0 ] 正在打电话。
您应该只使用 id(而不是 urn)。 字段投影也是错误的:
使用:
projection=(localizedFirstName,vanityName)
而不是:
projection=(results*(localizedFirstName,vanityName))
例如:
curl -H "X-Restli-Protocol-Version: 2.0.0" \
"https://api.linkedin.com/v2/me?oauth2_access_token=<TOKEN>&projection=(id)"
会return
{
"id": <ID>
}
并将其用作:
curl -H "X-Restli-Protocol-Version: 2.0.0" \
"https://api.linkedin.com/v2/people/(id:<ID>)?oauth2_access_token=<TOKEN>&projection=(localizedFirstName,vanityName)"
所以:
{
"vanityName": "<VANITY-NAME>",
"localizedFirstName": "<NAME>"
}
希望对您有所帮助