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

Python调用LinkedIn API发布内容遇500内部服务器错误求助

LinkedIn API调用500内部服务器错误排查与修复

问题概述

使用Python开发LinkedIn API内容发布服务时,调用/v2/ugcPosts接口返回未明确原因的500内部服务器错误,调整请求JSON结构后问题仍未解决。

原请求代码

import requests
import json

headers = {
    'Authorization':'Bearer KEY',
    'X-Restli-Protocol-Version': '2.0.0',
    'Content-Type': 'application/json',
    'X-LinkedIn-Auth-Member-Id': 'urn:li:organization:87433271',
}

# 定义要发布的内容
data = {
    'lifecycleState': 'PUBLISHED',
    'specificContent': {
        'com.linkedin.ugc.ShareContent': {
            'shareCommentary': {
                'text': '13sec',
            },
            'shareMediaCategory': 'NONE',
        },
    },
    'visibility': {
        'com.linkedin.ugc.MemberNetworkVisibility': 'PUBLIC',
    },
}

# 将内容转换为JSON格式
data = json.dumps(data)

# 向企业页面发布内容
response = requests.post(
    'https://api.linkedin.com/v2/ugcPosts',
    data=data,
    headers=headers,
)

# 检查发布是否成功
if response.status_code == 201:
    print('内容发布成功!')
else:
    print('发布内容时出错:', response.text)

错误响应

发布内容时出错:{"message":"Internal Server Error","status":500}

问题排查与修复方案

出现500错误的核心原因是请求参数与企业页面发布规则不匹配,具体问题及修复如下:

  • 错误的X-LinkedIn-Auth-Member-Id字段:该字段应填写成员(Member)的URN,而非组织URN。发布企业页面内容时,无需通过此header指定主体,而是通过请求体中的author字段指定组织URN。
  • 缺少author字段:发布到企业页面必须明确指定内容的发布主体,需在请求数据中添加author字段,值为目标企业组织的URN。
  • 可见性类型不匹配:发布企业内容时,可见性类型应使用com.linkedin.ugc.OrganizationVisibility,而非针对个人的MemberNetworkVisibility。

修复后的代码

import requests
import json

headers = {
    'Authorization':'Bearer KEY',
    'X-Restli-Protocol-Version': '2.0.0',
    'Content-Type': 'application/json',
}

# 定义要发布的内容
data = {
    'author': 'urn:li:organization:87433271',  # 添加企业组织URN作为发布主体
    'lifecycleState': 'PUBLISHED',
    'specificContent': {
        'com.linkedin.ugc.ShareContent': {
            'shareCommentary': {
                'text': '13sec',
            },
            'shareMediaCategory': 'NONE',
        },
    },
    'visibility': {
        'com.linkedin.ugc.OrganizationVisibility': 'PUBLIC',  # 修改为企业可见性类型
    },
}

data = json.dumps(data)

response = requests.post(
    'https://api.linkedin.com/v2/ugcPosts',
    data=data,
    headers=headers,
)

if response.status_code == 201:
    print('内容发布成功!')
else:
    print('发布内容时出错:', response.text)

额外注意事项

  • 确保Access Token拥有w_organization_social权限,这是发布企业页面内容的必要权限
  • 验证组织URN的正确性,确认该组织与开发者账号关联且有权限发布内容

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 04:40:55