# LinkedIn Company Scraper (`calm_builder/linkedin-company-scraper`) Actor

Collect structured data from public LinkedIn company and showcase pages. Get firmographics, followers, website, affiliated and similar pages, and recent posts with engagement metrics. No login required - built for B2B lead generation, ABM, and competitive research.

- **URL**: https://apify.com/calm\_builder/linkedin-company-scraper.md
- **Developed by:** [Coder](https://apify.com/calm_builder) (community)
- **Categories:** Lead generation, Social media, Developer tools
- **Stats:** 12 total users, 2 monthly users, 100.0% runs succeeded, 8 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.00 / 1,000 company profile scrapeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## LinkedIn Company Scraper

Collect structured data from public [LinkedIn](https://www.linkedin.com) **company** and **showcase** pages using page URLs or company usernames. Add one or more entries, start a run, and receive clean JSON records in your Apify dataset — no LinkedIn login required.

Use it for **B2B lead generation**, **account-based marketing (ABM)**, **competitive intelligence**, **sales prospecting**, **market research**, **brand monitoring**, and **CRM enrichment** — without copying company profiles and posts manually.

---

### What you get

Each saved row is **one LinkedIn company or showcase page**, organized into clear sections:

| Section                                | What it contains                                                                                |
| -------------------------------------- | ----------------------------------------------------------------------------------------------- |
| **Identity**                           | Company URL, success flag, name, page type (`company` or `showcase`), and public slug           |
| **Overview**                           | Tagline, follower count, logo URL, cover image URL, and description                             |
| **Firmographics**                      | Industry, company size, headquarters, website, organization type, founded year, and specialties |
| **Location**                           | Structured address when LinkedIn publishes it on the public page                                |
| **`affiliatedCompanies`** _(optional)_ | Related company and showcase pages linked from the profile                                      |
| **`similarCompanies`** _(optional)_    | Similar companies and showcase pages suggested by LinkedIn                                      |
| **`posts`** _(optional)_               | Recent public posts with text, URLs, authors, engagement, media, and post type                  |

Results are saved to the dataset **as each company is processed**, so you can preview progress before the run finishes.

---

### Quick start on Apify

1. Open the Actor in the Apify Console.
2. Under **LinkedIn companies**, add one or more company or showcase URLs or usernames (one per line).
3. Choose whether to include **affiliated companies**, **similar companies**, and **posts**.
4. Set **Maximum posts per company** when post collection is enabled.
5. Click **Start** and open the **Dataset** tab as companies are saved.

**Supported input formats:**

- Company username: `microsoft`
- Full company URL: `https://www.linkedin.com/company/microsoft/`
- Showcase URL: `https://www.linkedin.com/showcase/aiatmeta/`
- Regional company URL: `https://pk.linkedin.com/company/meezan-bank-ltd/`

**Example input:**

```json
{
  "companies": [
    "microsoft",
    "https://www.linkedin.com/showcase/aiatmeta/",
    "aiforseo",
    "https://www.linkedin.com/company/stripe/"
  ],
  "includeAffiliatedCompanies": true,
  "includeSimilarCompanies": true,
  "includePosts": true,
  "maxPosts": 30
}
````

***

### Input parameters

#### LinkedIn companies

|              |                                                                                                             |
| ------------ | ----------------------------------------------------------------------------------------------------------- |
| **Field**    | `companies`                                                                                                 |
| **Type**     | List of text entries (one company per line)                                                                 |
| **Required** | Yes — at least one entry                                                                                    |
| **Formats**  | Company username, `linkedin.com/company/...` URL, `linkedin.com/showcase/...` URL, or regional LinkedIn URL |

Duplicate entries in the same run are processed once.

Invalid entries that cannot be recognized as a company or showcase URL or username are skipped with a warning.

#### Related pages

| Field                        | Default | Description                                                                                   |
| ---------------------------- | ------- | --------------------------------------------------------------------------------------------- |
| `includeAffiliatedCompanies` | `false` | When enabled, each result includes affiliated LinkedIn pages linked from the company profile  |
| `includeSimilarCompanies`    | `false` | When enabled, each result includes similar companies and showcase pages suggested by LinkedIn |

#### Posts

| Field          | Default | Description                                                                                      |
| -------------- | ------- | ------------------------------------------------------------------------------------------------ |
| `includePosts` | `true`  | When enabled, each result includes recent public posts from the company page                     |
| `maxPosts`     | `10`    | Maximum posts to collect **per company** (1–1,000). Only applies when post collection is enabled |

The post limit applies independently to each company in your list. For example, 5 companies with `maxPosts: 30` can return up to **150 posts** total across the dataset.

***

### What you will see during a run

The run log is written for end users — messages describe collection progress only.

Typical messages:

- `Starting collection for N company page(s).`
- `Progress: 5 company page(s) saved (120 posts collected, 5 successful).`
- `Could not retrieve openai.` *(when a single page fails)*
- `Run complete. Saved N company page(s) (M successful, P posts).`

If one company cannot be retrieved, other companies in the same run can still succeed.

On the Apify **free plan**, you may also see a notice when free-tier limits apply (see [Free plan limits](#free-plan-limits)).

***

### Output overview

#### Dataset structure

- Results are saved to a **single Apify dataset**
- Each row is one company object with nested sections (`posts`, `affiliatedCompanies`, `similarCompanies`, etc.)
- Check **`success`** on each row — `true` means the page was retrieved; `false` means identity fields and an **`error`** message are returned

Field presence varies by page: not every company publishes affiliated pages, similar pages, specialties, or a full address on the public view. Missing sections are omitted from the output — not necessarily a scraper error.

When **`includePosts`** is disabled, the `posts` and `postCount` fields are not included.

***

### Output fields

#### Status and identity

| Field              | Description                                         |
| ------------------ | --------------------------------------------------- |
| `success`          | Whether the company page was retrieved successfully |
| `error`            | Short explanation when `success` is `false`         |
| `companyUrl`       | Canonical LinkedIn company or showcase URL          |
| `name`             | Display name                                        |
| `pageType`         | `company` or `showcase`                             |
| `companyId`        | Public slug from the page URL                       |
| `companyIdNumeric` | Numeric LinkedIn organization ID when available     |

#### Overview and firmographics

| Field              | Description                                                    |
| ------------------ | -------------------------------------------------------------- |
| `tagline`          | Short tagline under the company name when shown                |
| `followerCount`    | Follower count when available                                  |
| `logoUrl`          | Company logo image URL                                         |
| `coverImageUrl`    | Cover / banner image URL when available                        |
| `description`      | About / description text                                       |
| `industry`         | Industry label                                                 |
| `companySize`      | Employee size range                                            |
| `headquarters`     | Headquarters location                                          |
| `website`          | External website URL                                           |
| `organizationType` | Organization type (for example Public Company, Privately Held) |
| `founded`          | Founded year when listed                                       |
| `specialties`      | List of specialty labels                                       |

#### `address`

| Field             | Description                   |
| ----------------- | ----------------------------- |
| `streetAddress`   | Street address when published |
| `addressLocality` | City or locality              |
| `addressRegion`   | Region or state               |
| `postalCode`      | Postal code                   |
| `addressCountry`  | Country                       |

#### `affiliatedCompanies` and `similarCompanies` (arrays)

| Field  | Description                      |
| ------ | -------------------------------- |
| `name` | LinkedIn page name               |
| `url`  | LinkedIn company or showcase URL |

#### `posts` (array)

| Field            | Description                                                                                            |
| ---------------- | ------------------------------------------------------------------------------------------------------ |
| `activityId`     | LinkedIn activity ID                                                                                   |
| `activityUrn`    | Full activity URN                                                                                      |
| `attributedUrn`  | Attributed share URN when available                                                                    |
| `postUrl`        | Public post URL                                                                                        |
| `text`           | Post body text when available                                                                          |
| `publishedAt`    | ISO publish timestamp when available                                                                   |
| `publishedLabel` | Relative time label (for example `2 days ago`) when a timestamp is not shown                           |
| `author`         | Post author — `name`, `profileUrl`, `type` (`person` or `organization`), and `imageUrl` when available |
| `resharedBy`     | Resharer name and profile when the post is a repost                                                    |
| `engagement`     | `reactions`, `comments`, and `reactionTypes` when shown                                                |
| `postType`       | Content type — for example `text`, `image`, `video`, `document`, `article`, `carousel`, or `poll`      |
| `media`          | Nested media — images (with optional `alt` text), video sources, documents, or article links           |

#### Post count

| Field       | Description                                   |
| ----------- | --------------------------------------------- |
| `postCount` | Number of posts included in the `posts` array |

***

### Example output

The excerpts below come from a real run of public company and showcase pages. Full output is available in the run dataset.

#### Example input

```json
{
  "companies": [
    "microsoft",
    "https://www.linkedin.com/showcase/aiatmeta/",
    "aiforseo",
    "https://www.linkedin.com/company/openai/"
  ],
  "includeAffiliatedCompanies": true,
  "includeSimilarCompanies": true,
  "includePosts": true,
  "maxPosts": 30
}
```

#### Excerpt — successful company with profile, related pages, and posts

```json
{
  "companyUrl": "https://www.linkedin.com/company/microsoft/",
  "success": true,
  "name": "Microsoft",
  "pageType": "company",
  "companyId": "microsoft",
  "companyIdNumeric": "1035",
  "followerCount": 28489149,
  "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",
  "headquarters": "Redmond, Washington",
  "website": "https://news.microsoft.com/",
  "organizationType": "Public Company",
  "specialties": [
    "Business Software",
    "Developer Tools",
    "Cloud Computing",
    "Artificial Intelligence",
    "Machine Learning"
  ],
  "affiliatedCompanies": [
    {
      "name": "GitHub Software Development San Francisco, CA",
      "url": "https://www.linkedin.com/company/github/"
    },
    {
      "name": "Microsoft Azure Technology, Information and Internet Redmond, Washington",
      "url": "https://www.linkedin.com/showcase/microsoft-azure/"
    }
  ],
  "similarCompanies": [
    {
      "name": "Google Software Development Mountain View, CA",
      "url": "https://www.linkedin.com/company/google/"
    },
    {
      "name": "Amazon Software Development",
      "url": "https://www.linkedin.com/company/amazon/"
    }
  ],
  "postCount": 19,
  "posts": [
    {
      "activityId": "7475530228153425920",
      "postUrl": "https://www.linkedin.com/posts/activity-7475523295233216512-ujXb",
      "text": "When we launched our Community-First AI Infrastructure plan in January, we made a promise...",
      "author": {
        "name": "Brad Smith",
        "profileUrl": "https://www.linkedin.com/in/bradsmi",
        "type": "person"
      },
      "engagement": {
        "reactions": 950,
        "comments": 109,
        "reactionTypes": ["LIKE", "PRAISE", "EMPATHY"]
      },
      "postType": "image",
      "media": {
        "images": [
          {
            "url": "https://media.licdn.com/dms/image/v2/D4E22AQEAt3a4O2LLTg/feedshare-shrink_800/...",
            "alt": "Infographic with a headline about Microsoft's water stewardship progress."
          }
        ]
      }
    }
  ]
}
```

#### Excerpt — successful showcase page

```json
{
  "companyUrl": "https://www.linkedin.com/showcase/aiatmeta/",
  "success": true,
  "name": "AI at Meta",
  "pageType": "showcase",
  "companyId": "aiatmeta",
  "followerCount": 1104295,
  "postCount": 30
}
```

#### Excerpt — company that could not be retrieved

```json
{
  "companyUrl": "https://www.linkedin.com/company/openai/",
  "companyId": "openai",
  "success": false,
  "error": "The service is temporarily busy. Please try again later."
}
```

When `success` is `false`, the dataset row contains the company identifier and a user-friendly **`error`** message. No partial profile data is included.

***

### Pricing

This Actor uses **pay-per-event** pricing. You are charged only for successful collection events — failed pages are not billed for profile or post events.

| Event                 | When it is charged                                                     |
| --------------------- | ---------------------------------------------------------------------- |
| **`company_profile`** | Once per company page **successfully retrieved and saved**             |
| **`company_posts`**   | Once per **post successfully collected** when post scraping is enabled |

**Examples** (see the **Pricing** tab on the Store listing for current rates):

| Run                                       | What you pay for                                                               |
| ----------------------------------------- | ------------------------------------------------------------------------------ |
| 100 companies, posts disabled             | 100 `company_profile` events                                                   |
| 100 companies, 25 posts each, all succeed | 100 `company_profile` + 2,500 `company_posts` events                           |
| 100 companies, 10 succeed, 20 fail        | 10 `company_profile` events (+ posts only for successful companies with posts) |

Disable **Include posts** if you only need firmographics and related pages — you will not be charged for `company_posts` events.

***

### Free plan limits

On the Apify **free plan**, the Actor may automatically apply:

| Limit                       | Value                                       |
| --------------------------- | ------------------------------------------- |
| Companies processed per run | **2** (only the first entries in your list) |
| Maximum posts per company   | **10**                                      |

Additional companies in the same run are not processed. Paid Apify plans can use the full input list and higher post limits without these caps. If limits apply, the run log will include a short notice.

***

### Public pages and data coverage

**No LinkedIn login required**\
The Actor reads publicly visible company and showcase pages. It does not sign in to LinkedIn and does not use your account or cookies.

**Guest view vs signed-in view**\
Results reflect what LinkedIn shows to visitors who are not logged in. Compared with what you see when signed in, output may include:

- Fewer recent posts or shorter post text
- Missing affiliated or similar page sections on some profiles
- Limited address or specialty detail
- No employee lists, job listings, or analytics available only to logged-in users

Coverage varies by page, company size, and LinkedIn's own visibility settings.

**Company vs showcase pages**\
Both `linkedin.com/company/...` and `linkedin.com/showcase/...` URLs are supported. Plain usernames (for example `microsoft`) are resolved as company pages.

**Posts**\
Post collection is paginated up to your `maxPosts` limit per company. The number of posts returned depends on what LinkedIn exposes on the public page — some companies publish fewer posts to guest visitors than others.

**High-traffic or restricted pages**\
Some pages may return `success: false` with messages such as "The service is temporarily busy" or "Company page not found." Retrying the run later or processing the page in a smaller batch can help in some cases.

**Compliance**\
You are responsible for using collected data in line with applicable laws and [LinkedIn's terms of service](https://www.linkedin.com/legal/user-agreement).

***

### Tips for best results

1. **Use usernames or full URLs** — Both `microsoft` and `https://www.linkedin.com/company/microsoft/` work; showcase pages need the full `/showcase/` URL or slug when not a standard company name.
2. **Start with a small batch** — Test with 5–10 companies before large exports.
3. **Check `success` on every row** — Filter the dataset on `success: true` for completed pages only.
4. **Toggle related pages only when needed** — Affiliated and similar company lists add useful context for ABM but are not required for basic enrichment.
5. **Set a sensible `maxPosts`** — Use a lower limit for quick profile checks; raise it for content monitoring or competitive post analysis.
6. **Deduplicate on `companyId`** — Use the public slug as a stable key across runs.
7. **Schedule recurring runs** — Use Apify schedules to refresh company profiles and recent posts for your target account list.
8. **Export flexibly** — Download the dataset as JSON, CSV, Excel, or connect via API to your CRM, data warehouse, or automation tools.

***

### Frequently asked questions

**Can I scrape both company and showcase pages?**\
Yes. Use a company URL (`/company/...`), showcase URL (`/showcase/...`), or a plain company username.

**Why is `success` false for some companies?**\
The page may be unavailable, temporarily busy, restricted, or not found. Check the `error` field for a short explanation. Other companies in the same run can still succeed.

**Why are there fewer posts than my `maxPosts` setting?**\
LinkedIn may expose fewer public posts than your limit, especially on guest pages. The Actor collects up to the number available, capped by `maxPosts`.

**Why are `affiliatedCompanies` or `similarCompanies` empty?**\
Those sections are only included when the toggle is enabled **and** LinkedIn displays them on the public page. Many smaller companies do not show affiliated pages.

**Why is post `author` a person instead of the company?**\
Some company posts are published by executives or employees on behalf of the organization. Reshared posts include a `resharedBy` field when applicable.

**Can I scrape personal LinkedIn profiles?**\
This Actor is built for **company and showcase pages**. For person profiles (`linkedin.com/in/...`), use a LinkedIn profile scraper instead.

**Will failed companies be charged?**\
No. `company_profile` and `company_posts` events are charged only on successful collection. See the **Pricing** tab for current event rates.

**Can I run hundreds of companies at once?**\
Yes on paid plans. Companies are processed in parallel; results appear in the dataset as each one completes.

**Does this Actor collect jobs or employee lists?**\
No. It focuses on public company profile data, optional related pages, and optional recent posts. Job listings and employee directories are outside this Actor's scope.

***

### Support

For Actor-specific issues, use the **Issues** tab on the Apify Store listing or contact the publisher through Apify.

For platform questions (runs, billing, API, schedules), see [Apify documentation](https://docs.apify.com) and Apify support.

# Actor input Schema

## `companies` (type: `array`):

Enter company or showcase page URLs or usernames, one per line. Supported formats include full links (for example, https://www.linkedin.com/company/microsoft/), showcase links (for example, https://www.linkedin.com/showcase/microsoft-azure/), regional links (for example, https://pk.linkedin.com/company/example/), and plain usernames (for example, microsoft).

## `includeAffiliatedCompanies` (type: `boolean`):

When enabled, each result includes affiliated LinkedIn pages linked from the company profile.

## `includeSimilarCompanies` (type: `boolean`):

When enabled, each result includes similar companies and showcase pages suggested by LinkedIn for the profile.

## `includePosts` (type: `boolean`):

When enabled, each result includes recent posts from the company page.

## `maxPosts` (type: `integer`):

Maximum number of posts to collect from each company page. Only applies when post collection is enabled.

## Actor input object example

```json
{
  "companies": [
    "microsoft",
    "https://www.linkedin.com/showcase/aiatmeta/"
  ],
  "includeAffiliatedCompanies": false,
  "includeSimilarCompanies": false,
  "includePosts": true,
  "maxPosts": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "companies": [
        "microsoft",
        "https://www.linkedin.com/showcase/aiatmeta/"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("calm_builder/linkedin-company-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "companies": [
        "microsoft",
        "https://www.linkedin.com/showcase/aiatmeta/",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("calm_builder/linkedin-company-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "companies": [
    "microsoft",
    "https://www.linkedin.com/showcase/aiatmeta/"
  ]
}' |
apify call calm_builder/linkedin-company-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=calm_builder/linkedin-company-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "LinkedIn Company Scraper",
        "description": "Collect structured data from public LinkedIn company and showcase pages. Get firmographics, followers, website, affiliated and similar pages, and recent posts with engagement metrics. No login required - built for B2B lead generation, ABM, and competitive research.",
        "version": "0.0",
        "x-build-id": "aJ8IiYpUVIiAFKNem"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/calm_builder~linkedin-company-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-calm_builder-linkedin-company-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/calm_builder~linkedin-company-scraper/runs": {
            "post": {
                "operationId": "runs-sync-calm_builder-linkedin-company-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/calm_builder~linkedin-company-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-calm_builder-linkedin-company-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "companies"
                ],
                "properties": {
                    "companies": {
                        "title": "LinkedIn companies",
                        "minItems": 1,
                        "type": "array",
                        "description": "Enter company or showcase page URLs or usernames, one per line. Supported formats include full links (for example, https://www.linkedin.com/company/microsoft/), showcase links (for example, https://www.linkedin.com/showcase/microsoft-azure/), regional links (for example, https://pk.linkedin.com/company/example/), and plain usernames (for example, microsoft).",
                        "items": {
                            "type": "string",
                            "minLength": 1
                        }
                    },
                    "includeAffiliatedCompanies": {
                        "title": "Include affiliated companies",
                        "type": "boolean",
                        "description": "When enabled, each result includes affiliated LinkedIn pages linked from the company profile.",
                        "default": false
                    },
                    "includeSimilarCompanies": {
                        "title": "Include similar companies",
                        "type": "boolean",
                        "description": "When enabled, each result includes similar companies and showcase pages suggested by LinkedIn for the profile.",
                        "default": false
                    },
                    "includePosts": {
                        "title": "Include posts",
                        "type": "boolean",
                        "description": "When enabled, each result includes recent posts from the company page.",
                        "default": true
                    },
                    "maxPosts": {
                        "title": "Maximum posts per company",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Maximum number of posts to collect from each company page. Only applies when post collection is enabled.",
                        "default": 10
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
