LinkedIn Company Data Enricher avatar

LinkedIn Company Data Enricher

Pricing

from $3.00 / 1,000 company enricheds

Go to Apify Store
LinkedIn Company Data Enricher

LinkedIn Company Data Enricher

Enrich LinkedIn company slugs with public data: name, industry, size, website, HQ, description.

Pricing

from $3.00 / 1,000 company enricheds

Rating

0.0

(0)

Developer

viralanalyzer

viralanalyzer

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

18 days ago

Last modified

Categories

Share

🏢 LinkedIn Company Data Enricher (BYOC) — Public Company Profiles by Slug

🔗 View on Apify Store | 🇺🇸 English | 🇧🇷 Português

Enrich a list of LinkedIn company slugs with public profile data — company name, description, industry, company size, headquarters, follower count, and logo. No login or LinkedIn API key required. This is a BYOC (Bring Your Own Connectivity) actor: LinkedIn aggressively blocks anonymous datacenter traffic, so you supply a high-reputation RESIDENTIAL proxy from your own plan via the proxy configuration. Pure HTTP fetch — no browser.

✨ Features

  • 🏷️ Company profile enrichment — Resolve a slug to name, description, industry, size, HQ, followers, and logo
  • 🔢 Batch input — Pass many company slugs in a single run
  • ⚙️ Tunable concurrencymaxConcurrency (1–10) controls parallel fetches to balance speed vs rate limiting
  • 🌐 BYOC / BYOP — Bring your own RESIDENTIAL proxy through proxyConfiguration (strongly recommended; LinkedIn blocks datacenter IPs)
  • 🚫 No login, no API key — Reads only the public company page (linkedin.com/company/SLUG)
  • 🪪 Logo URL extraction — Captures the company logo image when present
  • 🧾 Per-company metadata — Includes resolved profileUrl, httpStatus, and scrapedAt timestamp
  • 🛡️ Diagnostic guard — On missing input or zero results, the actor saves a clearly-labeled diagnostic item (with remediation steps) and succeeds without charging — never bills you for empty runs
  • Pure HTTP — Lightweight got-scraping + cheerio parsing, no headless browser overhead

📥 Input

ParameterTypeRequiredDefaultDescription
companySlugsstring[]LinkedIn company URL slugs. Found at linkedin.com/company/SLUG. Example: microsoft, google, netflix.
maxConcurrencyinteger3Companies to fetch in parallel (1–10). Keep low to avoid rate limiting.
proxyConfigurationobject{ "useApifyProxy": true }Proxy configuration. LinkedIn blocks anonymous datacenter traffic — a RESIDENTIAL proxy is strongly recommended.

Input Example

{
"companySlugs": [
"microsoft",
"google",
"netflix"
],
"maxConcurrency": 3,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

📤 Output

Each successfully enriched company produces one dataset item:

FieldTypeDescription
slugstringLinkedIn company slug (linkedin.com/company/SLUG)
namestringCompany display name
descriptionstring | nullCompany description from the page meta description
industrystring | nullIndustry sector
companySizestring | nullEmployee count range
hqstring | nullHeadquarters location
followersstring | nullLinkedIn follower count text (when present on the page)
logoUrlstring | nullCompany logo image URL
profileUrlstringResolved LinkedIn company profile URL
httpStatusnumberHTTP status code of the fetch
scrapedAtstringISO 8601 scrape timestamp

Fields are extracted from the public company page. Optional fields (description, industry, companySize, hq, followers, logoUrl) return null when LinkedIn does not expose them for a given company or page layout.

Output Example

{
"slug": "microsoft",
"name": "Microsoft",
"description": "Every company has a mission. What's ours? To empower every person and every organization to achieve more.",
"industry": "Software Development",
"companySize": "10,001+ employees",
"hq": "Redmond, Washington",
"followers": "23,000,000 followers",
"logoUrl": "https://media.licdn.com/dms/image/company-logo/microsoft.png",
"profileUrl": "https://www.linkedin.com/company/microsoft/",
"httpStatus": 200,
"scrapedAt": "2026-06-06T12:00:00.000Z"
}

Diagnostic Output (no charge)

If no slugs are provided, or LinkedIn blocks every request and zero companies are enriched, the actor finishes SUCCEEDED but pushes a single diagnostic item and does not charge any event. For example, on a full block:

{
"message": "No companies enriched. LinkedIn blocks anonymous public traffic from sharing servers.",
"solution": "Configure a high-reputation RESIDENTIAL proxy from your plan (BYOP) in the proxyConfiguration parameter.",
"companySlugs": ["microsoft", "google"],
"failedCount": 2
}

📋 Use Cases

  • Lead enrichment — Turn a list of company slugs from a CRM/spreadsheet into structured firmographics (industry, size, HQ)
  • Sales prospecting — Quickly qualify target accounts by company size and industry
  • Market & competitor mapping — Profile a set of competitors or a market segment
  • Recruiting / talent research — Understand employer size, sector, and location at a glance
  • Data pipeline backfill — Enrich an existing company table that already stores LinkedIn slugs
  • Investor / startup research — Build a snapshot of portfolio or watchlist companies

❓ FAQ

Q: Does this actor need a LinkedIn login or API key? A: No. It reads only the public company page at linkedin.com/company/SLUG. There is no authentication step.

Q: What does "BYOC" mean here, and why do I need a residential proxy? A: LinkedIn aggressively blocks anonymous datacenter IPs. To get reliable results you should bring your own connectivity — a high-reputation RESIDENTIAL proxy — via the proxyConfiguration input. Without it, requests are likely to be blocked and the run will return a diagnostic item instead of data.

Q: Where do I find a company's slug? A: Open the company on LinkedIn and copy the path segment after /company/. For https://www.linkedin.com/company/microsoft/, the slug is microsoft.

Q: What happens if a company is blocked or not found? A: That company is recorded as failed and skipped; other companies in the run still proceed. If every company fails (zero enriched), the actor exits successfully with a diagnostic item explaining the block — and you are not charged.

Q: Am I charged for empty or blocked runs? A: No. Pay-Per-Event billing is only triggered for companies that are actually enriched. Missing-input and zero-result runs save a diagnostic guide and skip billing entirely.

Q: Why is description (or another field) null? A: Optional fields depend on how LinkedIn renders that specific company's public page. When a field isn't present in the markup, it is returned as null rather than guessed.

Q: How fast is it, and how do I avoid rate limits? A: It is pure HTTP (no browser), processing slugs in batches sized by maxConcurrency with a short pause between batches. Keep maxConcurrency low (the default is 3) to reduce the chance of rate limiting.

💰 Pricing

This actor uses Pay-Per-Event (PPE) pricing with a single event:

EventWhen it fires
company-enrichedOnce per company successfully enriched

You are billed per enriched company — empty, missing-input, and fully-blocked runs are not charged. For current per-event rates, see the actor's pricing on its Apify Store page: apify.com/viralanalyzer/linkedin-company-enricher-byoc.

📝 Changelog

v1.0 (Current)

  • ✅ Public LinkedIn company enrichment by slug (no login, no API key)
  • ✅ Extracts name, description, industry, company size, HQ, followers, logo URL
  • ✅ Batch input with tunable maxConcurrency (1–10) and inter-batch pacing
  • ✅ BYOC / BYOP — bring your own RESIDENTIAL proxy via proxyConfiguration
  • ✅ Per-company metadata (profileUrl, httpStatus, scrapedAt)
  • ✅ Diagnostic guard for missing input and zero-result runs (no charge)
  • ✅ Pure HTTP stack (got-scraping + cheerio), no headless browser
  • ✅ PPE billing via company-enriched event with owner-skip

🏢 Enriquecedor de Dados de Empresas do LinkedIn (BYOC) — Perfis Públicos por Slug

🇺🇸 English | 🇧🇷 Português

Enriqueça uma lista de slugs de empresas do LinkedIn com dados públicos do perfil — nome da empresa, descrição, setor, porte, sede, número de seguidores e logo. Não requer login nem chave de API do LinkedIn. Este é um actor BYOC (Bring Your Own Connectivity): o LinkedIn bloqueia agressivamente tráfego anônimo de datacenter, então você fornece um proxy RESIDENCIAL de alta reputação do seu próprio plano via configuração de proxy. Busca HTTP pura — sem navegador.

✨ Funcionalidades

  • 🏷️ Enriquecimento de perfil — Resolve um slug para nome, descrição, setor, porte, sede, seguidores e logo
  • 🔢 Entrada em lote — Passe muitos slugs de empresa em uma única execução
  • ⚙️ Concorrência ajustávelmaxConcurrency (1–10) controla buscas em paralelo, equilibrando velocidade x rate limiting
  • 🌐 BYOC / BYOP — Use seu próprio proxy RESIDENCIAL via proxyConfiguration (fortemente recomendado; o LinkedIn bloqueia IPs de datacenter)
  • 🚫 Sem login, sem chave de API — Lê apenas a página pública da empresa (linkedin.com/company/SLUG)
  • 🪪 Extração da URL do logo — Captura a imagem do logo da empresa quando presente
  • 🧾 Metadados por empresa — Inclui profileUrl resolvido, httpStatus e timestamp scrapedAt
  • 🛡️ Guarda de diagnóstico — Em caso de entrada ausente ou zero resultados, o actor salva um item de diagnóstico claramente rotulado (com passos de remediação) e finaliza com sucesso sem cobrar — nunca fatura execuções vazias
  • HTTP puro — Parsing leve com got-scraping + cheerio, sem o custo de um navegador headless

📥 Entrada

ParâmetroTipoObrigatórioPadrãoDescrição
companySlugsstring[]Slugs de URL de empresas do LinkedIn. Encontrados em linkedin.com/company/SLUG. Exemplo: microsoft, google, netflix.
maxConcurrencyinteger3Empresas a buscar em paralelo (1–10). Mantenha baixo para evitar rate limiting.
proxyConfigurationobjeto{ "useApifyProxy": true }Configuração de proxy. O LinkedIn bloqueia tráfego anônimo de datacenter — um proxy RESIDENCIAL é fortemente recomendado.

Exemplo de Entrada

{
"companySlugs": [
"microsoft",
"google",
"netflix"
],
"maxConcurrency": 3,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

📤 Saída

Cada empresa enriquecida com sucesso produz um item no dataset:

CampoTipoDescrição
slugstringSlug da empresa no LinkedIn (linkedin.com/company/SLUG)
namestringNome de exibição da empresa
descriptionstring | nullDescrição da empresa a partir da meta description da página
industrystring | nullSetor de atuação
companySizestring | nullFaixa de número de funcionários
hqstring | nullLocalização da sede
followersstring | nullTexto da contagem de seguidores no LinkedIn (quando presente)
logoUrlstring | nullURL da imagem do logo da empresa
profileUrlstringURL resolvida do perfil da empresa no LinkedIn
httpStatusnumberCódigo de status HTTP da requisição
scrapedAtstringTimestamp ISO 8601 da extração

Os campos são extraídos da página pública da empresa. Campos opcionais (description, industry, companySize, hq, followers, logoUrl) retornam null quando o LinkedIn não os expõe para aquela empresa ou layout de página.

Exemplo de Saída

{
"slug": "microsoft",
"name": "Microsoft",
"description": "Every company has a mission. What's ours? To empower every person and every organization to achieve more.",
"industry": "Software Development",
"companySize": "10,001+ employees",
"hq": "Redmond, Washington",
"followers": "23,000,000 followers",
"logoUrl": "https://media.licdn.com/dms/image/company-logo/microsoft.png",
"profileUrl": "https://www.linkedin.com/company/microsoft/",
"httpStatus": 200,
"scrapedAt": "2026-06-06T12:00:00.000Z"
}

Saída de Diagnóstico (sem cobrança)

Se nenhum slug for fornecido, ou se o LinkedIn bloquear todas as requisições e zero empresas forem enriquecidas, o actor finaliza como SUCCEEDED mas grava um único item de diagnóstico e não cobra nenhum evento. Por exemplo, em caso de bloqueio total:

{
"message": "No companies enriched. LinkedIn blocks anonymous public traffic from sharing servers.",
"solution": "Configure a high-reputation RESIDENTIAL proxy from your plan (BYOP) in the proxyConfiguration parameter.",
"companySlugs": ["microsoft", "google"],
"failedCount": 2
}

📋 Casos de Uso

  • Enriquecimento de leads — Transforme uma lista de slugs do CRM/planilha em firmografia estruturada (setor, porte, sede)
  • Prospecção de vendas — Qualifique contas-alvo rapidamente por porte e setor
  • Mapeamento de mercado/concorrência — Perfile um conjunto de concorrentes ou um segmento
  • Recrutamento / pesquisa de talentos — Entenda porte, setor e localização do empregador num relance
  • Backfill de pipeline de dados — Enriqueça uma tabela de empresas que já armazena slugs do LinkedIn
  • Pesquisa de investidores / startups — Crie um snapshot de empresas do portfólio ou watchlist

❓ Perguntas Frequentes

P: Este actor precisa de login ou chave de API do LinkedIn? R: Não. Ele lê apenas a página pública da empresa em linkedin.com/company/SLUG. Não há etapa de autenticação.

P: O que significa "BYOC" aqui, e por que preciso de um proxy residencial? R: O LinkedIn bloqueia agressivamente IPs anônimos de datacenter. Para obter resultados confiáveis, traga sua própria conectividade — um proxy RESIDENCIAL de alta reputação — via proxyConfiguration. Sem isso, as requisições provavelmente serão bloqueadas e a execução retornará um item de diagnóstico em vez de dados.

P: Onde encontro o slug de uma empresa? R: Abra a empresa no LinkedIn e copie o segmento da URL após /company/. Para https://www.linkedin.com/company/microsoft/, o slug é microsoft.

P: O que acontece se uma empresa for bloqueada ou não encontrada? R: Essa empresa é registrada como falha e ignorada; as demais empresas da execução continuam. Se todas falharem (zero enriquecidas), o actor finaliza com sucesso e um item de diagnóstico explicando o bloqueio — e você não é cobrado.

P: Sou cobrado por execuções vazias ou bloqueadas? R: Não. A cobrança Pay-Per-Event só é acionada para empresas efetivamente enriquecidas. Execuções sem entrada e totalmente bloqueadas salvam um guia de diagnóstico e pulam a cobrança por completo.

P: Por que description (ou outro campo) está null? R: Campos opcionais dependem de como o LinkedIn renderiza a página pública daquela empresa específica. Quando um campo não está presente no HTML, ele é retornado como null em vez de adivinhado.

P: Quão rápido é, e como evito rate limits? R: É HTTP puro (sem navegador), processando slugs em lotes definidos por maxConcurrency com uma breve pausa entre lotes. Mantenha maxConcurrency baixo (o padrão é 3) para reduzir a chance de rate limiting.

💰 Preços

Este actor usa precificação Pay-Per-Event (PPE) com um único evento:

EventoQuando dispara
company-enrichedUma vez por empresa enriquecida com sucesso

A cobrança é por empresa enriquecida — execuções vazias, sem entrada e totalmente bloqueadas não são cobradas. Para as taxas por evento atuais, consulte a precificação na página do actor na Apify Store: apify.com/viralanalyzer/linkedin-company-enricher-byoc.

🔗 Actors Relacionados

📝 Changelog

v1.0 (Atual)

  • ✅ Enriquecimento público de empresas do LinkedIn por slug (sem login, sem chave de API)
  • ✅ Extrai nome, descrição, setor, porte, sede, seguidores e URL do logo
  • ✅ Entrada em lote com maxConcurrency ajustável (1–10) e pausa entre lotes
  • ✅ BYOC / BYOP — use seu próprio proxy RESIDENCIAL via proxyConfiguration
  • ✅ Metadados por empresa (profileUrl, httpStatus, scrapedAt)
  • ✅ Guarda de diagnóstico para entrada ausente e execuções com zero resultados (sem cobrança)
  • ✅ Stack HTTP puro (got-scraping + cheerio), sem navegador headless
  • ✅ Cobrança PPE via evento company-enriched com owner-skip