# LinkedIn Profile Posts Scraper (apimaestro, No Cookies)

> LinkedIn Profile Posts Scraper (apimaestro, No Cookies) is a paid API for AI agents from stableapify.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Scrapes LinkedIn posts for a given profile username, returning post content, reactions, comment counts, and media attachments without requiring LinkedIn cookies.

## Facts

- Endpoint: POST https://stableapify.dev/api/actors/apimaestro/linkedin-profile-posts/call
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/linkedin-profile-posts-scraper-apimaestro-no-cookies-5ac20b2b
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_FcRgClZTQz9DUcjMj2on5

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability linkedin-profile-posts-scraper-apimaestro-no-cookies-5ac20b2b -d '<json body>'
```

Example prompt: Pull the last 10 LinkedIn posts from the profile 'sarptecimer' — I want the post text, reaction counts, and comment counts for each one.

## When to prefer this

Use this endpoint when you need to scrape posts from a specific LinkedIn profile without providing LinkedIn session cookies, and you want structured data including post text, reactions, and comments. Prefer this over the harvestapi variant when the apimaestro actor's pricing or output format better fits your workflow. Use when you need a quick async run with a dataset you can fetch separately.

## Known failure modes

- Invalid or non-existent LinkedIn username returns empty dataset
- LinkedIn rate limiting or anti-bot measures may cause incomplete results
- Actor may time out for profiles with very large post histories
- Payment failure (x402) if USDC balance is insufficient
- Memory limit too low may cause actor crash for large scrapes
- Token expiry (30-day JWT) if dataset is not fetched promptly

## How this service works

Start the "Profile Posts Scraper for LinkedIn [No Cookies]" Apify actor (apimaestro/linkedin-profile-posts). Scrape LinkedIn posts data for a given LinkedIn profile including post content, reactions, comments count, and media attachments

## Output

Returns an Apify actor run object (run ID, status, actorId, startedAt, usageTotalUsd, defaultDatasetId) plus a JWT token used to poll the result dataset. The actual scraped posts — including post text, reaction counts, comment counts, and any media — are retrieved from the dataset using the returned token and dataset ID via a companion fetch endpoint.

## Example request

```json
{
 "input": {
  "username": "sarptecimer",
  "includeEmail": false
 },
 "options": {
  "memory": 1024,
  "maxItems": 10
 }
}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "username",
    "page_number",
    "limit"
   ],
   "properties": {
    "limit": {
     "type": "integer",
     "default": 100,
     "maximum": 100,
     "minimum": 1,
     "description": "Optional: Limit the number of results per page (1-100)"
    },
    "username": {
     "type": "string",
     "default": "satyanadella",
     "description": "LinkedIn profile username (e.g., 'satyanadella' or 'linkedin.com/in/satyanadella')"
    },
    "page_number": {
     "type": "integer",
     "default": 1,
     "maximum": 9007199254740991,
     "minimum": 1,
     "description": "Page number for pagination (first page returns a pagination token for subsequent pages)"
    },
    "total_posts": {
     "type": "integer",
     "maximum": 10000,
     "minimum": 1,
     "description": "Enable automatic pagination: Set the total number of posts to scrape. This will override manual pagination settings."
    },
    "pagination_token": {
     "type": "string",
     "description": "Token from previous page response for paginated requests (optional, only needed for pages after first). For example, to get result from page 2, use pagination token from response of page 1"
    }
   },
   "description": "Normalized actor input. See field descriptions for the simplified shape; native Apify input also accepted (passed through).",
   "additionalProperties": {}
  },
  "options": {
   "type": "object",
   "properties": {
    "build": {
     "type": "string",
     "maxLength": 100,
     "minLength": 1
    },
    "memory": {
     "type": "integer",
     "maximum": 32768,
     "minimum": 128
    },
    "maxItems": {
     "type": "integer",
     "maximum": 100000,
     "minimum": 1
    }
   },
   "description": "Optional Apify run options.",
   "additionalProperties": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/linkedin-profile-posts-scraper-apimaestro-no-cookies-5ac20b2b/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from stableapify.dev](https://www.zero.xyz/host/stableapify.dev/llms.txt)
