Write

Add or Update Company

Add or update a company record, looking it up by LinkedIn company ID (preferred) or by a name plus website fallback. You can set industry, headcount, headquarters, website, tags, custom attributes, external IDs, and notes, with custom attributes merged into any existing values. Fires a company.created or company.updated webhook, and fails if neither a LinkedIn company ID nor a name is provided.

upsert_companyPOST/api/v1/companies
crispy — bash

Example prompt: Add or update the company Acme Analytics with LinkedIn ID 1441, industry software, 180 employees, and tag it tier-A

{
  "id": "co_8821",
  "name": "Acme Analytics",
  "linkedin_company_id": "1441",
  "created": false,
  "updated": true
}
Permission scope
core
Access
Write
Category
Search & Discovery

What you can build

Create or enrich account records with firmographics and CRM identifiers
Attach custom personalization variables to a company for campaign messaging
Keep company data in sync by upserting on a stable LinkedIn ID
Tag and annotate target accounts for segmentation and reporting

Parameters

Inputs accepted by upsert_company.

NameTypeDescription
linkedin_company_idstringLinkedIn numeric/slug company ID (preferred upsert key).
namestringCompany name. Required if linkedin_company_id absent.
industrystring[]Industry tags.
headcountnumberApproximate employee count.
employee_countnumberEmployee count (alias for headcount).
headquartersobject{ city, country, ... }
websitestringCompany website URL.
tagsstring[]Tags for categorization.
custom_attrsobjectCustom personalization vars (max 100 string keys, 1KB total). Merged with existing.
external_idsobjectStable third-party identifiers (CRM IDs, enrichment IDs).
notesstringFree-text notes about the company.

The complete LinkedIn API. Ready when you are.

Connect your first LinkedIn profile in under 5 minutes. Every tool, every seat, no feature gates. Safe limits, warm-up, and full permission control built in.