LinkedIn开发者API权限报错:获取公司ID及企业帖子遇问题
解决LinkedIn API「Not enough permissions to access: GET-search /companySearch」错误
问题核心
你遇到的权限错误,本质是当前Access Token的权限范围、应用关联的产品类型,和companySearch接口的要求不匹配——即便持有营销/销售类权限,也不代表覆盖企业搜索所需的特定权限。
具体解决步骤
- 确认正确权限范围:调用
v2/companySearch接口必须持有**r_organization_social**权限(只读访问企业社交数据);如果使用Sales Navigator相关功能,则需要r_sales_navigation_company_search权限。普通营销类权限(如rw_ads)或基础销售权限并不包含该范围。 - 检查应用产品关联:你的LinkedIn开发者应用必须关联对应产品(Marketing Developer Platform或Sales Navigator),才能申请上述权限。若未关联,需在开发者后台的「Products」标签下添加对应产品并完成审核。
- 验证Token实际权限:先调用以下接口确认当前Token的权限列表,确保包含所需权限:
import requests url = "https://api.linkedin.com/v2/me?projection=(permissions)" headers = { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' } response = requests.get(url, headers=headers) print(response.json())
- 优化请求参数(可选):虽然和权限无关,但
companySearch接口建议指定projection参数明确返回字段,避免冗余数据,示例:
import requests url = "https://api.linkedin.com/v2/companySearch?q=search&query=LinkedIn%20Corporation&projection=(elements*(id,localizedName))" headers = { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' } response = requests.get(url, headers=headers) print(response.json())
额外注意
- 部分权限(如
r_organization_social)需要LinkedIn审核,需在申请时说明合理使用场景,审核通过后才能获取对应权限的Token。 - API请求无需携带Cookie,代码中可直接移除
Cookie头,仅保留Authorization头即可。
内容的提问来源于stack exchange,提问作者Deva Hari
相关产品推荐
相关产品推荐

