Docs · LinkedIn company page
LinkedIn company page
A company's public overview and latest updates.
https://api.lurkapi.com/v1/linkedin/companyWhen to use this
Public company overview from LinkedIn's guest page. Includes the latest updates that LinkedIn makes available without a login. Missing public fields are null. Employee profiles, funding details and the full About tab are outside this response. An authentication wall or challenge is an upstream error, never a successful empty company.
Parameters
All parameters go in the query string.
| Parameter | Description |
|---|---|
urlstringrequired | Public LinkedIn company page URL, e.g. https://www.linkedin.com/company/hubspot/. Use the base company page.
|
Example request
Replace YOUR_API_KEY with your key, or set LURKAPI_KEY for the code. Get a free key.
curl "https://api.lurkapi.com/v1/linkedin/company?url=https%3A%2F%2Fwww.linkedin.com%2Fcompany%2Fhubspot%2F" \
-H "x-api-key: YOUR_API_KEY"const params = new URLSearchParams({
url: "https://www.linkedin.com/company/hubspot/",
});
const res = await fetch(`https://api.lurkapi.com/v1/linkedin/company?${params}`, {
headers: { "x-api-key": process.env.LURKAPI_KEY },
});
const data = await res.json();
if (!data.success) throw new Error(`${data.code}: ${data.error}`);
console.log(data.specialties);import os
import requests
res = requests.get(
"https://api.lurkapi.com/v1/linkedin/company",
params={
"url": "https://www.linkedin.com/company/hubspot/",
},
headers={"x-api-key": os.environ["LURKAPI_KEY"]},
timeout=60,
)
data = res.json()
if not data["success"]:
raise RuntimeError(f"{data['code']}: {data['error']}")
print(data["specialties"])Example response
A real response from this endpoint, captured from the live API and trimmed to a couple of items. Strings over 96 characters (mostly signed media URLs) are cut short and end in ….
Show the example response (3 KB)Hide
{
"success": true,
"credits_remaining": 999999,
"credits_charged": 1,
"id": "68529",
"url": "https://www.linkedin.com/company/hubspot",
"name": "HubSpot",
"tagline": "The agentic customer platform to scale your business.",
"description": "HubSpot is a leading agentic customer platform that provides software an…",
"website": "https://hubspot.com",
"logo": "https://media.licdn.com/dms/image/v2/C4D0BAQF8H-SLmMDZlA/company-logo_20…",
"industry": "Software Development",
"size": "5,001-10,000 employees",
"employeeCount": 12967,
"followers": 1758405,
"founded": 2006,
"headquarters": "Cambridge, Massachusetts",
"type": "Public Company",
"specialties": [
"inbound marketing",
"marketing",
"internet marketing",
"online marketing",
"web marketing",
"software",
"blogging",
"SEO",
"marketing automation",
"social media",
"email marketing",
"analytics",
"sales",
"inbound sales",
"customer support",
"customer service",
"customer relationship management",
"help desk software",
"platform",
"customer code",
"and culture code"
],
"posts": [
{
"id": "7510369779325734912",
"url": "https://www.linkedin.com/posts/hubspot_we-built-the-original-flywheel-pl…",
"text": "We built the original flywheel playbook.\n\nThen AI broke it.\n\nSo we did w…",
"datePublished": "2026-09-28T16:08:11.313Z",
"dateSource": "published",
"likeCount": 166,
"commentCount": 23,
"images": [
"https://media.licdn.com/dms/image/v2/D4E10AQGtNbunT0NzDg/image-shrink_80…"
],
"video": null,
"reposted": false
},
{
"id": "7509275824353755137",
"url": "https://www.linkedin.com/posts/hubspot_hubspot-activity-7509275824353755137-t_UZ",
"text": "Yep. Everyone's using AI, but new data shows only 6% of companies are ge…",
"datePublished": "2026-09-25T15:41:12.123Z",
"dateSource": "published",
"likeCount": 125,
"commentCount": 23,
"images": [],
"video": null,
"reposted": false
}
]
}Response fields
Every field of a successful response. [] marks a list: a[].b is the b of each item in a. nullable fields can be null; optional fields can be missing.
Show all 29 fieldsHide
| Field | Type | Description |
|---|---|---|
| success | true | Always true here; errors have success: false. |
| credits_remaining | number | Your balance after this call. On anonymous playground calls: free tries left today. |
| credits_charged | number | Credits this call cost; 0 on free endpoints. On anonymous playground calls: tries used (1). |
| id | stringnullable | LinkedIn organization id, when exposed on the public page. |
| url | string | Canonical public LinkedIn company page URL. |
| name | string | Company name. |
| tagline | stringnullable | Company's short tagline. |
| description | stringnullable | Public About us text. |
| website | stringnullable | External website published by the company. |
| logo | stringnullable | Company logo URL; may expire. |
| industry | stringnullable | Industry category shown by LinkedIn. |
| size | stringnullable | Company headcount range as LinkedIn displays it, e.g. 5,001–10,000 employees. |
| employeeCount | numbernullable | LinkedIn members affiliated with the company; this can differ from its declared size range. |
| followers | numbernullable | Followers of the company page, when published. |
| founded | numbernullable | Founding year published by the company. |
| headquarters | stringnullable | Headquarters location as displayed by LinkedIn. |
| type | stringnullable | Organization type, e.g. Public Company. |
| specialties | string[] | Company specialties listed on the public page. |
| posts | object[] | Latest public update cards, including reposts, in LinkedIn's order. Typically up to 12; not a complete history. |
| posts[].id | string | Activity id of this update, kept as a string to preserve all digits. |
| posts[].url | string | Public post URL or activity permalink. |
| posts[].text | string | The update's public text. Empty when the card only contains media. |
| posts[].datePublished | stringnullable | Publication time in UTC. For repost cards with no published timestamp, estimated from the activity id; see dateSource. |
| posts[].dateSource | stringnullable | published comes from LinkedIn JSON-LD; activity_id is reconstructed from the activity id and may describe the repost time. Null when unavailable. |
| posts[].likeCount | numbernullable | Total reactions LinkedIn shows, including reaction types other than likes; null when hidden. |
| posts[].commentCount | numbernullable | Number of comments shown on the public card; null when hidden. |
| posts[].images | string[] | Public images in the update, in source order. Expiring URLs; empty for video-only or document-only cards. |
| posts[].video | stringnullable | A publicly playable video URL from the card, or null. URLs may expire. |
| posts[].reposted | boolean | True when LinkedIn explicitly marks this update as a repost. |
Caching and freshness
Responses are cached for up to 1 hour, so a repeat call within that window can return the same data. It still costs 1 credit.
Errors
Errors return { success: false, error, code, docs } with the HTTP status below. Validation errors, 401/402/429 rejections and 5xx failures are free; not_found is charged (how charging works). All error codes.
| Status | Code | Meaning |
|---|---|---|
| 401 | missing_api_key | No API key. Send it in the x-api-key header. |
| 401 | invalid_api_key | The key is unknown or was revoked. |
| 402 | insufficient_credits | Not enough credits for this call. Buy a pack or wait for tomorrow's top-up. |
| 404 | not_found | The endpoint, or the thing you asked for (ad, post, subreddit), doesn't exist. Charged when the platform was checked. |
| 405 | method_not_allowed | Endpoints take GET with query params. |
| 429 | rate_limited | Too many calls at once. Wait for the retry-after seconds, then retry. |
| 500 | internal_error | Something broke on our side. Retry; 5xx errors are free. |
| 502 | upstream_error | The platform didn't give a usable answer. Retry; 5xx errors are free. |
| 503 | upstream_busy | All our connections to the platform are busy. Retry in a few seconds; 5xx errors are free. |
| 504 | upstream_timeout | The platform took over 30 seconds to answer. Retry; timeouts are free. |
Use it in Claude
Once LurkAPI is connected to Claude, this endpoint is the linkedin_company tool. Ask in plain English, for example:
Use LurkAPI's linkedin_company with url "https://www.linkedin.com/company/hubspot/" and summarize what you find.Claude calls linkedin_company with arguments like these, and each call costs 1 credit:
{
"url": "https://www.linkedin.com/company/hubspot/"
}Tool results skip nulls and empty lists to save tokens.