# Linkedin Post Search Scraper (No Cookies) (`harvestapi/linkedin-post-search`) Actor

Search LinkedIn Posts with advanced filters by target profiles or companies. No cookies or account required.

- **URL**: https://apify.com/harvestapi/linkedin-post-search.md
- **Developed by:** [HarvestAPI](https://apify.com/harvestapi) (community)
- **Categories:** Lead generation, Social media, Automation
- **Stats:** 14,383 total users, 3,586 monthly users, 100.0% runs succeeded, 290 bookmarks
- **User rating**: 4.89 out of 5 stars

## Pricing

from $1.50 / 1,000 posts

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 Posts Search scraper

Our powerful tool helps you search posts by text and filter by LinkedIn profiles or companies without compromising security or violating platform policies. Extract full post data, engagement metrics, and additionally scrape reactions and comments. This greatly helps with engagement analysis and outreach purposes.

#### Key Benefits

- No cookies or account required: Access profile data without sharing cookies or risking account restrictions
- Low pricing: $2 per 1k posts.
- Fast response times deliver data in seconds 🚀
- No caching, fresh data.

### How It Works

`targetUrls` List of LinkedIn profile/company URLs who posted or re-posted the content.

- (required) List of search queries (e.g., `b2b sales`). LinkedIn search supports operators for more complex queries, see [Use Boolean search on LinkedIn](https://www.linkedin.com/help/linkedin/answer/a524335). One search query is limited by LinkedIn to 85 characters.
- (optionally) List of LinkedIn profile/company URLs who posted or re-posted the content
- (optionally) List of LinkedIn public identifiers who posted or re-posted the content (e.g., `williamhgates` from `https://www.linkedin.com/in/williamhgates`)
- (optionally) List if LinkedIn profile/company IDs who posted or re-posted the content (e.g. ACoAAA8BYqEBCGLg_vT_ca6mMEqkpp9nVffJ3hc)
- (optionally) List of LinkedIn companies where authors of posts work (e.g., `Microsoft`, `Google`).

Note: This is Post Search scraper, so list of search queries is required. If you don't need to scrape specific search queries, and you want to scrape all posts from specific companies or authors, our [LinkedIn Profile Posts Scraper](https://apify.com/harvestapi/linkedin-profile-posts) works better for this use-case

Additional content:

- `scrapeReactions` - Enable to scrape reactions to posts. Default is `false`. Reactions will be charged as a separate post and pushed into the dataset. Each post will also contain a nested list of its own reactions.
- `maxReactions` - Maximum number of reactions to scrape per post. If you set this to 0, it will scrape all reactions.
- `scrapeComments` - Enable to scrape comments to posts. Default is `false`. Comments will be charged as a separate post and pushed into the dataset. Each post will also contain a nested list of its own comments.
- `maxComments` - Maximum number of comments to scrape per post. If you set this to 0, it will scrape all comments.

Other params (optionally):

- `postedLimit` - Fetch posts no older than X time. Options: '1h', '24h', 'week', 'month', '3months', '6months', 'year'.
- `postedLimitDate` - Scrape posts from now up to and including this date. It supports the [Date time string format](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format). For example, "2011-10-10", or "2011-10-10T14:48:00.000+09:00" or a timestamp: "628021800000".
- `sortBy` - Sort by 'relevance' (of the search query) or 'date' (newest first).
- `maxPosts` - Maximum number of posts to scrape per each search query. This overrides `scrapePages` pagination. If you set this to 0, it will scrape all posts.
- `startPage` - The page number to start scraping from. Default is 1.
- `scrapePages` - The number of pages to scrape, if `maxPosts` is not set. Each page contains around 50 posts when using search keywords (`searchQueries`) and 90-100 when query profile/company posts without keywords. The page size is not stable on LinkedIn side and may be slightly less than 50/100 that we actually request on our side.

#### Data You'll Receive

- Post content
- Author information
- Social engagement metrics
- Media: images, videos, and links
- Content of Re-posts
- Comments and reactions (if enabled, each item will be charged as a separate post)

#### Sample output data

For example you can search posts by Google (or other company) employees who hire software engineers:

```json
{
  "searchQueries": [
    "Hiring software engineer",
    "Hiring full stack developer",
    "Hiring backend developer"
  ],
  "authorsCompanyPublicIdentifiers": ["google", "microsoft", "amazon", "meta"]
}
````

Here is the example post output of this actor:

```json
{
  "type": "post",
  "id": "7330988768578920448",
  "linkedinUrl": "https://www.linkedin.com/posts/nickbennett05_hiring-activity-7330988768578920448-Je01",
  "content": "I’m #hiring. Are you passionate about the intersection of physical and virtual worlds, including AI-powered systems and agent-based workflows? If so, I'm hiring for an exciting position on my team. See the details below.",
  "author": {
    "universalName": null,
    "publicIdentifier": "nickbennett05",
    "type": "profile",
    "name": "Nick Bennett",
    "linkedinUrl": "https://www.linkedin.com/in/nickbennett05?miniProfileUrn=urn%3Ali%3Afsd_profile%3AACoAAAMs-kQBF8xYdTGLvYN4zwhqDGh2UlSXIpY",
    "info": "UX Leadership at Amazon | Amazon Fulfillment Technology | UXMC",
    "website": null,
    "websiteLabel": null,
    "avatar": {
      "url": "https://media.licdn.com/dms/image/v2/D4D35AQEiacuf_U3fqQ/profile-framedphoto-shrink_800_800/B4DZbzmaiuGkAg-/0/1747843656196?e=1748552400&v=beta&t=Tr-pqK_0lShKXF6FqeqSrGMqlZabG26Nt6FyAEiIzWs",
      "width": 674,
      "height": 674,
      "expiresAt": 1748552400000
    }
  },
  "postedAt": {
    "timestamp": 1747843925614,
    "date": "2025-05-21T16:12:05.614Z",
    "postedAgoShort": "1d",
    "postedAgoText": "1 day ago • Visible to anyone on or off LinkedIn"
  },
  "postImages": [],
  "socialContent": {
    "hideCommentsCount": false,
    "hideReactionsCount": false,
    "hideSocialActivityCounts": false,
    "hideShareAction": true,
    "hideSendAction": true,
    "hideRepostsCount": false,
    "hideViewsCount": false,
    "hideReactAction": false,
    "hideCommentAction": false,
    "shareUrl": "https://www.linkedin.com/posts/nickbennett05_hiring-activity-7330988768578920448-Je01?utm_source=social_share_send&utm_medium=member_desktop_web&rcm=ACoAAExUClQBdCKsvo8NLfk3HZMfrSLtXnxHlNs",
    "showContributionExperience": false,
    "showSocialDetail": true
  },
  "engagement": {
    "likes": 13,
    "comments": 1,
    "shares": 9,
    "reactions": [
      {
        "type": "LIKE",
        "count": 12
      },
      {
        "type": "PRAISE",
        "count": 1
      }
    ]
  },
  "reactions": [
    {
      "id": "urn:li:fsd_reaction:(urn:li:fsd_profile:ACoAAASSLvYBzlarj2-kg7kwLu1Kg8l3d9V8GlM,urn:li:ugcPost:7330988767496876032,0)",
      "reactionType": "LIKE",
      "actor": {
        "id": "ACoAAASSLvYBzlarj2-kg7kwLu1Kg8l3d9V8GlM",
        "name": "Peiyao Feng",
        "linkedinUrl": "https://www.linkedin.com/in/ACoAAASSLvYBzlarj2-kg7kwLu1Kg8l3d9V8GlM",
        "position": "Head of Product and Engineering @ Amazon | MBA, Gen AI and LLM for eCommerce, Last Mile Logistics Optimization",
        "pictureUrl": "https://media.licdn.com/dms/image/v2/C5603AQF5NVDoGIIEnw/profile-displayphoto-shrink_200_200/profile-displayphoto-shrink_200_200/0/1631913556503?e=1753315200&v=beta&t=X3B2Wg84t4XTF4VEWHs2eHJV8_bha7tGtlYz9nHcHww",
        "picture": {
          "url": "https://media.licdn.com/dms/image/v2/C5603AQF5NVDoGIIEnw/profile-displayphoto-shrink_200_200/profile-displayphoto-shrink_200_200/0/1631913556503?e=1753315200&v=beta&t=X3B2Wg84t4XTF4VEWHs2eHJV8_bha7tGtlYz9nHcHww",
          "width": 120,
          "height": 120,
          "expiresAt": 1753315200000
        }
      }
    },
    {
      "id": "urn:li:fsd_reaction:(urn:li:fsd_profile:ACoAAACBISIBNox0_dNka7Zwftd78QpXyGR3aQc,urn:li:ugcPost:7330988767496876032,0)",
      "reactionType": "LIKE",
      "actor": {
        "id": "ACoAAACBISIBNox0_dNka7Zwftd78QpXyGR3aQc",
        "name": "Gene Fojtik",
        "linkedinUrl": "https://www.linkedin.com/in/ACoAAACBISIBNox0_dNka7Zwftd78QpXyGR3aQc",
        "position": "LEADER | BAR RAISER | TECHNOLOGIST"
      }
    },
    {
      "id": "urn:li:fsd_reaction:(urn:li:fsd_profile:ACoAAAS2TewBuWaYsw5ywgFLlMFZ-0V3w5g1m0Q,urn:li:ugcPost:7330988767496876032,0)",
      "reactionType": "PRAISE",
      "actor": {
        "id": "ACoAAAS2TewBuWaYsw5ywgFLlMFZ-0V3w5g1m0Q",
        "name": "Christina Bencho-Bost",
        "linkedinUrl": "https://www.linkedin.com/in/ACoAAAS2TewBuWaYsw5ywgFLlMFZ-0V3w5g1m0Q",
        "position": "Principal-Tech Amazon Fulfillment Technologies",
        "pictureUrl": "https://media.licdn.com/dms/image/v2/C4D03AQGtZsTRqf8qdw/profile-displayphoto-shrink_800_800/profile-displayphoto-shrink_800_800/0/1589406292311?e=1753315200&v=beta&t=2r6RPeDCXCH1vgx8vdJb-30McSJbrV9y0BDyZ5G1RQ4",
        "picture": {
          "url": "https://media.licdn.com/dms/image/v2/C4D03AQGtZsTRqf8qdw/profile-displayphoto-shrink_800_800/profile-displayphoto-shrink_800_800/0/1589406292311?e=1753315200&v=beta&t=2r6RPeDCXCH1vgx8vdJb-30McSJbrV9y0BDyZ5G1RQ4",
          "width": 560,
          "height": 560,
          "expiresAt": 1753315200000
        }
      }
    },
    {
      "id": "urn:li:fsd_reaction:(urn:li:fsd_profile:ACoAAADtt8sBIKXReBKPk22Eb841pr04ibVrARM,urn:li:ugcPost:7330988767496876032,0)",
      "reactionType": "LIKE",
      "actor": {
        "id": "ACoAAADtt8sBIKXReBKPk22Eb841pr04ibVrARM",
        "name": "Amirtha Raman",
        "linkedinUrl": "https://www.linkedin.com/in/ACoAAADtt8sBIKXReBKPk22Eb841pr04ibVrARM",
        "position": "Builder. Creative. Writer"
      }
    },
    {
      "id": "urn:li:fsd_reaction:(urn:li:fsd_profile:ACoAAAOMTswBbUE8kc0Z4Gh7gOQnijkSpA55gCk,urn:li:ugcPost:7330988767496876032,0)",
      "reactionType": "LIKE",
      "actor": {
        "id": "ACoAAAOMTswBbUE8kc0Z4Gh7gOQnijkSpA55gCk",
        "name": "Laxmikant Rathi",
        "linkedinUrl": "https://www.linkedin.com/in/ACoAAAOMTswBbUE8kc0Z4Gh7gOQnijkSpA55gCk",
        "position": "Software Development Manager at Amazon",
        "pictureUrl": "https://media.licdn.com/dms/image/v2/C5603AQEP80WXyhiCxA/profile-displayphoto-shrink_800_800/profile-displayphoto-shrink_800_800/0/1521780629574?e=1753315200&v=beta&t=Cx_5iHIBthQJ5BH-rld-aCKZyOErzC0IqdfFTsnqMSw",
        "picture": {
          "url": "https://media.licdn.com/dms/image/v2/C5603AQEP80WXyhiCxA/profile-displayphoto-shrink_800_800/profile-displayphoto-shrink_800_800/0/1521780629574?e=1753315200&v=beta&t=Cx_5iHIBthQJ5BH-rld-aCKZyOErzC0IqdfFTsnqMSw",
          "width": 424,
          "height": 424,
          "expiresAt": 1753315200000
        }
      }
    }
  ],
  "comments": [
    {
      "id": "7331154096848097280",
      "linkedinUrl": "https://www.linkedin.com/feed/update/urn:li:ugcPost:7330988767496876032?commentUrn=urn%3Ali%3Acomment%3A%28ugcPost%3A7330988767496876032%2C7331154096848097280%29&dashCommentUrn=urn%3Ali%3Afsd_comment%3A%287331154096848097280%2Curn%3Ali%3AugcPost%3A7330988767496876032%29",
      "commentary": "Come work with us! @Nick Bennett is amazing and you will work on cutting edge problem space. \n\nCommenting for reach.",
      "createdAt": "2025-05-22T03:09:02.946Z",
      "numComments": 0,
      "numShares": null,
      "numImpressions": null,
      "reactionTypeCounts": [
        {
          "type": "LIKE",
          "count": 1
        }
      ],
      "actor": {
        "id": "ACoAAADtt8sBIKXReBKPk22Eb841pr04ibVrARM",
        "name": "Amirtha Raman",
        "linkedinUrl": "https://www.linkedin.com/in/amirtharaman",
        "position": "Builder. Creative. Writer",
        "author": false
      },
      "createdAtTimestamp": 1747883342946,
      "pinned": false,
      "contributed": false,
      "edited": false
    }
  ]
}
```

### Linkedin Post Search API

The actor stores results in a dataset. You can export data in various formats such as CSV, JSON, XLS, etc. You can scrape and access data on demand using API.

#### Support and Feedback

We continuously enhance our tools based on user feedback. If you encounter technical issues or have suggestions for improvement:

- Create an issue on the actor’s Issues tab in Apify Console
- Chat with us on our [Discord server](https://discord.gg/TGA9k9u2gE)
- Or contact us at contact@harvest-api.com

**\* \* \***

**Disclaimer**: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by LinkedIn Corporation. LinkedIn® is a registered trademark of LinkedIn Corporation. All trademarks are property of their respective owners.

# Actor input Schema

## `searchQueries` (type: `array`):

Queries to search LinkedIn posts. The same query as you would use in the LinkedIn search bar.

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

Maximum number of posts to scrape per each search query. If you set this to 0, it will scrape all posts.

## `postedLimit` (type: `string`):

Fetch posts no older than X time. Options: '1h', '24h', 'week', 'month'.

## `postedLimitDate` (type: `string`):

Scrape posts from now up to and including this date. It supports the [Date time string format](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format). For example, "2011-10-10", or "2011-10-10T14:48:00.000+09:00" or a timestamp: "628021800000"

## `sortBy` (type: `string`):

Sort by 'relevance' or 'date'.

## `authorUrls` (type: `array`):

List of LinkedIn profile or company URLs to scrape. Example: `https://www.linkedin.com/in/williamhgates` will fetch posted or re-posted content by Bill Gates.

## `authorsCompanies` (type: `array`):

Scrape posts of profile-authors who assigned to LinkedIn Company Names of these companies. Example: `Google` will fetch posts of Google employees or ex-employees in some cases.

## `mentioningMember` (type: `array`):

List of LinkedIn profile URLs of members mentioned in posts. Example: `https://www.linkedin.com/in/williamhgates` will fetch posts mentioning Bill Gates.

## `mentioningCompany` (type: `array`):

List of LinkedIn Company Names mentioned in posts. Example: `https://www.linkedin.com/company/google` will fetch posts mentioning Google.

## `contentType` (type: `string`):

Filter posts by content type. For example, if you choose 'Videos', it will scrape only posts containing videos.

## `authorsIndustryId` (type: `array`):

Scrape posts of profile-authors who assigned to LinkedIn Industry IDs of these industries. Full list: https://github.com/HarvestAPI/linkedin-industry-codes-v2/blob/main/linkedin\_industry\_code\_v2\_all\_eng.csv

## `authorKeywords` (type: `string`):

Scrape posts of profile-authors whose profiles contain at least one of these keywords in the headline or job title sections.

## `profileScraperMode` (type: `string`):

Choose the mode for scraping LinkedIn profiles. The Short mode provides basic information, while the Full mode includes full detailed profile data.

## `startPage` (type: `integer`):

The page number to start scraping from.

## `scrapePages` (type: `integer`):

The number of search pages to scrape. Each page contains 100 posts

## `scrapeReactions` (type: `boolean`):

Scrape reactions of posts.

## `maxReactions` (type: `integer`):

Maximum number of reactions to scrape per post. Default is 5.

## `reactionsProfileScraperMode` (type: `string`):

Choose the mode for scraping LinkedIn profiles. The Short mode provides basic information, while the Full mode includes full detailed profile data.

## `postNestedReactions` (type: `boolean`):

Whether to add reactions items inside post items. In a case of hundreds of reactions, the Actor might hit the max item size limit and won't be able to save a post.

## `scrapeComments` (type: `boolean`):

Scrape comments of posts.

## `commentsPostedLimit` (type: `string`):

Fetch comments no older than X time. Options: '1h', '24h', 'week', 'month'.

## `maxComments` (type: `integer`):

Maximum number of comments to scrape per post.

## `commentsProfileScraperMode` (type: `string`):

Choose the mode for scraping LinkedIn profiles. The Short mode provides basic information, while the Full mode includes full detailed profile data.

## `postNestedComments` (type: `boolean`):

Whether to add comments items inside post items. In a case of hundreds of comments, the Actor might hit the max item size limit and won't be able to save a post.

## Actor input object example

```json
{
  "searchQueries": [
    "b2b sales"
  ],
  "maxPosts": 20,
  "profileScraperMode": "short",
  "startPage": 1,
  "maxReactions": 5,
  "reactionsProfileScraperMode": "short",
  "commentsProfileScraperMode": "short"
}
```

# 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 = {
    "searchQueries": [
        "b2b sales"
    ],
    "maxPosts": 20,
    "scrapeReactions": false,
    "maxReactions": 5,
    "postNestedReactions": false,
    "scrapeComments": false,
    "postNestedComments": false
};

// Run the Actor and wait for it to finish
const run = await client.actor("harvestapi/linkedin-post-search").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 = {
    "searchQueries": ["b2b sales"],
    "maxPosts": 20,
    "scrapeReactions": False,
    "maxReactions": 5,
    "postNestedReactions": False,
    "scrapeComments": False,
    "postNestedComments": False,
}

# Run the Actor and wait for it to finish
run = client.actor("harvestapi/linkedin-post-search").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 '{
  "searchQueries": [
    "b2b sales"
  ],
  "maxPosts": 20,
  "scrapeReactions": false,
  "maxReactions": 5,
  "postNestedReactions": false,
  "scrapeComments": false,
  "postNestedComments": false
}' |
apify call harvestapi/linkedin-post-search --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Linkedin Post Search Scraper (No Cookies)",
        "description": "Search LinkedIn Posts with advanced filters by target profiles or companies. No cookies or account required.",
        "version": "0.0",
        "x-build-id": "ZYe2VtWDI4J7bH1s2"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/harvestapi~linkedin-post-search/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-harvestapi-linkedin-post-search",
                "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/harvestapi~linkedin-post-search/runs": {
            "post": {
                "operationId": "runs-sync-harvestapi-linkedin-post-search",
                "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/harvestapi~linkedin-post-search/run-sync": {
            "post": {
                "operationId": "run-sync-harvestapi-linkedin-post-search",
                "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",
                "properties": {
                    "searchQueries": {
                        "title": "Search queries",
                        "maxItems": 10000,
                        "type": "array",
                        "description": "Queries to search LinkedIn posts. The same query as you would use in the LinkedIn search bar.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxPosts": {
                        "title": "Maximum number of posts to scrape per each search query",
                        "type": "integer",
                        "description": "Maximum number of posts to scrape per each search query. If you set this to 0, it will scrape all posts."
                    },
                    "postedLimit": {
                        "title": "Posted Limit",
                        "enum": [
                            "any",
                            "1h",
                            "24h",
                            "week",
                            "month",
                            "3months",
                            "6months",
                            "year"
                        ],
                        "type": "string",
                        "description": "Fetch posts no older than X time. Options: '1h', '24h', 'week', 'month'."
                    },
                    "postedLimitDate": {
                        "title": "Posted Limit Date",
                        "type": "string",
                        "description": "Scrape posts from now up to and including this date. It supports the [Date time string format](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format). For example, \"2011-10-10\", or \"2011-10-10T14:48:00.000+09:00\" or a timestamp: \"628021800000\""
                    },
                    "sortBy": {
                        "title": "Sort by",
                        "enum": [
                            "relevance",
                            "date"
                        ],
                        "type": "string",
                        "description": "Sort by 'relevance' or 'date'."
                    },
                    "authorUrls": {
                        "title": "Profile or Company URLs who posted",
                        "maxItems": 10,
                        "type": "array",
                        "description": "List of LinkedIn profile or company URLs to scrape. Example: `https://www.linkedin.com/in/williamhgates` will fetch posted or re-posted content by Bill Gates.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "authorsCompanies": {
                        "title": "Companies where authors work",
                        "maxItems": 20,
                        "type": "array",
                        "description": "Scrape posts of profile-authors who assigned to LinkedIn Company Names of these companies. Example: `Google` will fetch posts of Google employees or ex-employees in some cases.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "mentioningMember": {
                        "title": "Mentioning member",
                        "maxItems": 10,
                        "type": "array",
                        "description": "List of LinkedIn profile URLs of members mentioned in posts. Example: `https://www.linkedin.com/in/williamhgates` will fetch posts mentioning Bill Gates.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "mentioningCompany": {
                        "title": "Mentioning company",
                        "type": "array",
                        "description": "List of LinkedIn Company Names mentioned in posts. Example: `https://www.linkedin.com/company/google` will fetch posts mentioning Google.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "contentType": {
                        "title": "Content type",
                        "enum": [
                            "all",
                            "videos",
                            "images",
                            "jobs",
                            "live_videos",
                            "documents",
                            "collaborative_articles"
                        ],
                        "type": "string",
                        "description": "Filter posts by content type. For example, if you choose 'Videos', it will scrape only posts containing videos."
                    },
                    "authorsIndustryId": {
                        "title": "Authors industry ID",
                        "maxItems": 20,
                        "type": "array",
                        "description": "Scrape posts of profile-authors who assigned to LinkedIn Industry IDs of these industries. Full list: https://github.com/HarvestAPI/linkedin-industry-codes-v2/blob/main/linkedin_industry_code_v2_all_eng.csv",
                        "items": {
                            "type": "string"
                        }
                    },
                    "authorKeywords": {
                        "title": "Author keywords",
                        "type": "string",
                        "description": "Scrape posts of profile-authors whose profiles contain at least one of these keywords in the headline or job title sections."
                    },
                    "profileScraperMode": {
                        "title": "Profile Scraper Mode",
                        "enum": [
                            "short",
                            "main"
                        ],
                        "type": "string",
                        "description": "Choose the mode for scraping LinkedIn profiles. The Short mode provides basic information, while the Full mode includes full detailed profile data.",
                        "default": "short"
                    },
                    "startPage": {
                        "title": "Start Page",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": "The page number to start scraping from. ",
                        "default": 1
                    },
                    "scrapePages": {
                        "title": "Number of pages to scrape",
                        "minimum": 0,
                        "maximum": 100,
                        "type": "integer",
                        "description": "The number of search pages to scrape. Each page contains 100 posts"
                    },
                    "scrapeReactions": {
                        "title": "Scrape Reactions",
                        "type": "boolean",
                        "description": "Scrape reactions of posts."
                    },
                    "maxReactions": {
                        "title": "Maximum number of reactions to scrape per post",
                        "type": "integer",
                        "description": "Maximum number of reactions to scrape per post. Default is 5."
                    },
                    "reactionsProfileScraperMode": {
                        "title": "Profile Scraper Mode for reactions",
                        "enum": [
                            "short",
                            "main"
                        ],
                        "type": "string",
                        "description": "Choose the mode for scraping LinkedIn profiles. The Short mode provides basic information, while the Full mode includes full detailed profile data.",
                        "default": "short"
                    },
                    "postNestedReactions": {
                        "title": "Post nested reactions (legacy, not recommended to enable)",
                        "type": "boolean",
                        "description": "Whether to add reactions items inside post items. In a case of hundreds of reactions, the Actor might hit the max item size limit and won't be able to save a post."
                    },
                    "scrapeComments": {
                        "title": "Scrape Comments",
                        "type": "boolean",
                        "description": "Scrape comments of posts."
                    },
                    "commentsPostedLimit": {
                        "title": "Comments Posted Limit (filter)",
                        "enum": [
                            "any",
                            "1h",
                            "24h",
                            "week",
                            "month",
                            "3months",
                            "6months",
                            "year"
                        ],
                        "type": "string",
                        "description": "Fetch comments no older than X time. Options: '1h', '24h', 'week', 'month'."
                    },
                    "maxComments": {
                        "title": "Maximum number of comments to scrape per post",
                        "type": "integer",
                        "description": "Maximum number of comments to scrape per post."
                    },
                    "commentsProfileScraperMode": {
                        "title": "Profile Scraper Mode for comments",
                        "enum": [
                            "short",
                            "main"
                        ],
                        "type": "string",
                        "description": "Choose the mode for scraping LinkedIn profiles. The Short mode provides basic information, while the Full mode includes full detailed profile data.",
                        "default": "short"
                    },
                    "postNestedComments": {
                        "title": "Post nested comments (legacy, not recommended to enable)",
                        "type": "boolean",
                        "description": "Whether to add comments items inside post items. In a case of hundreds of comments, the Actor might hit the max item size limit and won't be able to save a post."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
