# LinkedIn Jobs Scraper (cheap_scraper/linkedin-job-scraper) via StableApify

> LinkedIn Jobs Scraper (cheap_scraper/linkedin-job-scraper) via StableApify is a paid API for AI agents from stableapify.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Scrapes LinkedIn job listings by start URLs or search criteria, deduplicates results, and returns structured job data

## Facts

- Endpoint: POST https://stableapify.dev/api/actors/cheap_scraper/linkedin-job-scraper/call
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/linkedin-jobs-scraper-cheap-scraper-linkedin-job-scraper-via-48507105
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_qsntCUsWMH35i91akd8ql

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-jobs-scraper-cheap-scraper-linkedin-job-scraper-via-48507105 -d '<json body>'
```

Example prompt: Scrape up to 50 LinkedIn job listings for 'data scientist' roles in New York — remove any duplicates and give me the structured results including job title, company, location, and posting URL.

## When to prefer this

Choose this endpoint when you need to programmatically collect LinkedIn job listings at scale without managing browser automation yourself, especially when deduplication is important. It is cost-effective at $0.01 per call and integrates payment via x402/USDC. Prefer it over manual scraping or other LinkedIn scrapers when you need clean, deduplicated job data with minimal setup.

## Known failure modes

- Invalid or inaccessible LinkedIn URL returns an error or empty dataset
- LinkedIn rate limiting or bot detection may cause incomplete results
- Memory limit too low for large scrapes may cause actor failure
- Actor run may time out for very large result sets
- Invalid input schema (missing required fields) returns a 400-level error
- Duplicate removal may not catch all variants if job IDs differ slightly

## How this service works

Start the "LinkedIn Jobs Scraper | Remove Duplicate Jobs | Pay Per Result" Apify actor (cheap_scraper/linkedin-job-scraper). LinkedIn Jobs Scraper | Remove Duplicate Jobs.

The LinkedIn jobs scraper allows you to collect jobs in 2 ways:

    By providing one or more start URLs, or…

## Output

Returns an Apify actor run object with a run ID, status (READY), actor ID, start timestamp, total usage in USD, default dataset ID, and a JWT token for fetching the scraped job results from the dataset once the run completes.

## 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": [
    "distance",
    "publishedAt",
    "saveOnlyUniqueItems",
    "enrichCompanyData"
   ],
   "properties": {
    "jobType": {
     "type": "array",
     "items": {
      "enum": [
       "full-time",
       "part-time",
       "contract",
       "temporary",
       "internship"
      ],
      "type": "string"
     },
     "description": "Filter by job type (Full-time, Part-time, Contract, etc.). Multiple selections allowed. JSON field name: `jobType`"
    },
    "keyword": {
     "type": "object",
     "description": "Keyword to search for. (e.g., Software Engineer). JSON field name: `keywords`",
     "propertyNames": {
      "type": "string"
     },
     "additionalProperties": {}
    },
    "distance": {
     "enum": [
      "5",
      "10",
      "15",
      "25",
      "50",
      ""
     ],
     "type": "string",
     "default": "",
     "description": "Search radius from the location in miles. Leave empty for default. JSON field name: `distance`"
    },
    "location": {
     "type": "string",
     "description": "Location to search in. JSON field name: `location`"
    },
    "maxItems": {
     "type": "integer",
     "maximum": 9007199254740991,
     "minimum": 150,
     "description": "Maximum number of job listings to scrape. Leave empty for no limit. Note: Minimum is 150 results when using pay-per-result billing. JSON field name: `maxItems`"
    },
    "workType": {
     "type": "array",
     "items": {
      "enum": [
       "on-site",
       "remote",
       "hybrid"
      ],
      "type": "string"
     },
     "description": "Filter by work location type (On-site, Remote, Hybrid). Multiple selections allowed. JSON field name: `workType`"
    },
    "startUrls": {
     "type": "array",
     "items": {
      "type": "object",
      "required": [
       "url"
      ],
      "properties": {
       "url": {
        "type": "string",
        "format": "uri"
       },
       "method": {
        "type": "string"
       },
       "headers": {
        "type": "object",
        "propertyNames": {
         "type": "string"
        },
        "additionalProperties": {
         "type": "string"
        }
       },
       "payload": {
        "type": "string"
       },
       "userData": {
        "type": "object",
        "propertyNames": {
         "type": "string"
        },
        "additionalProperties": {}
       }
      },
      "additionalProperties": false
   
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/linkedin-jobs-scraper-cheap-scraper-linkedin-job-scraper-via-48507105/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)
