LinkedIn 公司研究 API 教程 | SandBase
搭一套 LinkedIn 公司研究工作流:读公司资料、拉公司帖子、翻页 feed——一个 SandBase 密钥,无需 LinkedIn 登录、无需 SDK。

如果你做 B2B 研究或竞品情报,LinkedIn 公司页是一个丰富、结构化的来源:员工规模、总部、粉丝基数,以及一条公开帖子流。这篇 LinkedIn 公司研究 API 教程用两个 SandBase 端点串起一个可复用的循环——读公司资料,再拉它的帖子——让 Agent 能端到端跑完。它建立在 LinkedIn 公开数据 API 汇总页之上;建议先读那篇了解全局。
这里的一切都是公开、只读数据。不需要登录 LinkedIn、不需要 SDK——但仍需要一个 SandBase API 密钥来鉴权。端点 API 参考是参数和响应信封的权威来源。参考只保证信封本身;下面的载荷字段名来自我实际跑的调用(测试于 2026-09-28,UTC),是示意性的、仅供观测——并非文档保证——请以真实响应为准核对。
先说结论
- 两个端点构成循环:
company-profile(企业信息)→company-posts(公开 feed)。- 每次调用都是
POST /v1/api/linkedin/web-v2/<path>,带一个公司url,一个SANDBASE_API_KEY。- 两个端点接同一个公司
url,所以循环天然可串联。- 仅公开、只读数据——不发帖、不涉及私有/仅成员可见数据。
SandBase vs. 官方 LinkedIn API
| 你的需求 | 用 |
|---|---|
| 公开、只读的公司资料和帖子 | SandBase LinkedIn 公开数据 API |
| 管理主页、发帖,或用 Marketing/合作伙伴 API | LinkedIn 官方 API |
| 私有或仅成员可见的数据 | 两种公开方案都不适用 |
工作流一览
- 用
linkedin/web-v2/company-profile以一个公司url读资料。 - 用同一个
url调用linkedin/web-v2/company-posts拉帖子,用返回的paging翻页。
每个端点返回共享信封——一个 id、一个 status、model,以及在 completed 运行上的负载。
SandBase 上的 LinkedIn 端点——company-profile 和 company-posts 驱动这个循环。
第 0 步:一个辅助函数管所有调用
import os
import requests
API = "https://api.sandbase.ai/v1/api"
HEADERS = {
"Authorization": f"Bearer {os.environ['SANDBASE_API_KEY']}",
"Content-Type": "application/json",
}
def call(path: str, payload: dict) -> dict:
resp = requests.post(f"{API}/{path}", headers=HEADERS, json=payload, timeout=70)
resp.raise_for_status()
body = resp.json()
if body.get("status") != "completed":
raise RuntimeError(body.get("error", {}).get("message", f"{path} 未完成"))
# 信封可能不同:优先读顶层 output,否则 outputs[0].data。
output = body.get("output")
if output is None and body.get("outputs"):
output = body["outputs"][0].get("data", {})
return output or {}
第 1 步:读公司资料
url = "https://www.linkedin.com/company/openai"
profile = call("linkedin/web-v2/company-profile", {"url": url})
print(profile.get("company_size"), "|", profile.get("followers"), "粉丝")
print("总部:", profile.get("headquarters"))
在我抓到的响应里(company-profile run id 79201745-d83f-4b1f-bee3-ba676cd1a1f0,测试于 2026-09-28,UTC),负载带 about、description、company_size、followers、employees 和 headquarters——这些是示意性的、仅供观测的字段。用 .get() 读每个,并对照真实响应核对。
company-profile 参考——url 参数和响应路径的事实来源。
第 2 步:拉公司帖子
feed = call("linkedin/web-v2/company-posts", {"url": url})
posts = feed.get("data", [])
paging = feed.get("paging")
for p in posts[:5]:
print(p.get("num_likes"), "赞,", p.get("num_comments"), "评论 -", p.get("posted"))
在我这次运行里(company-posts run id acda947a-5c3e-4114-a762-b1474e333bff),负载带一个 data 帖子列表(每条含 num_likes、num_comments、num_reposts、posted、poster)加一个 paging 对象。翻页时,按参考跟随 paging 对象——确切机制对照参考核对。
company-posts 参考——传同一个公司 url;通过 paging 对象翻页。
串起来
def research(company_url: str):
profile = call("linkedin/web-v2/company-profile", {"url": company_url})
feed = call("linkedin/web-v2/company-posts", {"url": company_url})
posts = feed.get("data", [])
engagement = [
{"posted": p.get("posted"), "likes": p.get("num_likes"), "comments": p.get("num_comments")}
for p in posts if isinstance(p, dict)
]
return {
"company_size": profile.get("company_size"),
"followers": profile.get("followers"),
"recent_posts": engagement,
}
因为两个端点接同一个公司 url 并共享同一个信封,循环保持扁平:call(...) 里一次 status 检查、profile 和 posts 用一套 .get() 模式。
常见用例
竞品情报
读一个竞品的 company_size、followers 和 headquarters,再拉近期帖子看它们推什么、效果如何(赞、评论、转发)。输入:一个公司 url。输出:企业信息加一份帖子互动样本。端点:company-profile、company-posts。
线索与客户研究
用 company-profile 的 company_size 和 followers 给目标客户名单做富化以排优先级。输入:公司 url。输出:可比的企业信息。端点:company-profile。
内容与信息分析
拉一个公司的帖子,分析 poster、发帖节奏和互动,理解它的内容策略。输入:一个公司 url。输出:带互动的帖子流。端点:company-posts。
招聘与增长信号
一个公司的 company_size 和 followers 在多次读取间的变化,结合它近期帖子的主题和频率,能暗示势头——一个大量发招聘或产品发布、同时粉丝增长的公司很可能在扩张。按节奏轮询这两个端点、存下数字、跨运行对比。防御式读每个字段,并把趋势当作方向性信号,因为观测字段会变。输入:一个公司 url。输出:随时间的企业信息与发帖趋势。端点:company-profile、company-posts。
实操要点
- 信封可能不同。 参考记录的是
outputs[0].data;两种结构都读(优先output,回退outputs[0].data)。 - 通过
paging对象翻页。 按参考的翻页机制处理company-posts。 - 业务字段仅供观测。 把
followers、num_likes、company_size之类当作观测到的、以真实响应核对。 - 仅公开、只读数据。 不发帖、不涉及仅成员可见数据。用 SandBase API 密钥鉴权。
- 做个好客户端。 遇到 HTTP 429 等瞬时错误按退避重试;翻页而不是猛打。
常见问题
我需要 LinkedIn 开发者应用或登录吗?
不需要。你用自己的 SANDBASE_API_KEY 向 SandBase 鉴权。这些读取端点不需要你这边有 LinkedIn 账号或 OAuth。
什么标识一个公司?
一个公司页 url(如 https://www.linkedin.com/company/<slug>)。两个端点接同一个 url。
怎么翻更多帖子?
company-posts 负载带一个 paging 对象;按参考跟随它。
我能读成员资料或私有数据吗? 本教程覆盖公司端点。汇总页也记录了公开的人物资料读取;私有和仅成员可见数据不在范围内。
小结
两个端点、一个信封、一个公司 url——这就是整个公司研究循环。完整端点目录见 LinkedIn 公开数据 API 汇总页。准备好后: