# LinkedIn Job Search Scraper Cookie-less 🍪 ✅ (`datamagnet/linkedin-job-search-scraper`) Actor

Search for job listings by keyword and filters, then get clean, easy-to-read results with the most useful details. Quickly narrow down roles by location, date posted, job type, seniority, salary, and work style.

- **URL**: https://apify.com/datamagnet/linkedin-job-search-scraper.md
- **Developed by:** [Datamagnet](https://apify.com/datamagnet) (community)
- **Categories:** Jobs, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 results

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

## Job Listing Searcher — LinkedIn Job Search Scraper

Job Listing Searcher is a simple LinkedIn job search scraper and job listing extractor for people who want fast, clean access to matching roles without manually browsing page after page. It helps recruiters, founders, sales teams, analysts, and job seekers search LinkedIn job listings by keyword and filters, then collect the most useful details in one place. Use it to find jobs by title, company, location, date posted, salary, work style, and seniority, all in a readable format that is easy to review and share. If you need a reliable LinkedIn job data collector for market research, hiring workflows, or opportunity tracking, this actor gives you a straightforward way to get results quickly.

### Key Features
- Extract matching LinkedIn job listings based on your keyword and filters.
- Collect the most useful job details in a clean, easy-to-scan format.
- Filter results by location, date posted, job type, seniority, salary, and work style.
- Search across specific companies, industries, functions, and title groups.
- Return only the number of listings you want, while the actor handles paging for you.
- Organize results so they are easy to review, compare, and export.
- Save time by turning a broad job search into a focused shortlist.

### Use Cases

#### Recruiting and Talent Sourcing
Recruiters can search for roles that match a target skill set, title, or seniority level and quickly review the company name, location, work style, and salary range. This makes it easier to understand what kinds of jobs are appearing in the market and where candidates may be looking.

#### Job Market Research
Analysts and founders can use the actor to study hiring trends by keyword, industry, and date posted. The returned job title, company, location, and posting date help them spot demand patterns and compare opportunities across different segments.

#### Competitive Intelligence
Sales and business development teams can track which companies are hiring for specific roles and what those roles suggest about growth plans. By filtering to company IDs, function IDs, or industry IDs, they can focus on the employers that matter most and use the results to guide outreach.

#### Career Search and Job Hunting
Job seekers can narrow down openings by remote, hybrid, or on-site work style, then compare salary and experience level before applying. This helps them spend less time searching and more time on the roles that fit their goals.

#### Workforce Planning
Operations and HR teams can monitor the kinds of positions being posted in a market and use that information to benchmark their own hiring plans. Fields like job type, seniority, and salary range make it easier to understand what employers are offering.

#### Content and Newsletter Research
Writers, creators, and newsletter publishers can gather fresh job listings around a topic such as golang, data engineering, or product management. The actor provides a simple source of current listings they can summarize, analyze, or turn into curated content.

### Input
| Field | Type | Required | Description | Example |
|---|---|---:|---|---|
| sort | string | No | Choose whether to show the newest jobs first or the most relevant ones first. | mostRelevant |
| start | string | No | Set where the search should begin when collecting more results. | 0 |
| salary | string | No | Show only jobs that meet or exceed a chosen salary level. | 200k+ |
| jobType | string | No | Choose the kind of job you want, such as full time or internship. | fullTime |
| distance | string | No | Set how far from the selected location the search should look. | mostRelevant |
| keywords | string | Yes | Enter the job title, skill, or phrase you want to search for. | golang |
| titleIds | string | No | Filter results to one or more job title groups. | 10,20 |
| companyIds | string | No | Limit results to one or more companies. | 1441,162479 |
| datePosted | string | No | Show jobs posted within a chosen time range. | anyTime |
| locationId | string | No | Search for jobs in a specific location. | 92000000 |
| functionIds | string | No | Filter results to one or more job functions. | 1,3,5 |
| industryIds | string | No | Filter results to one or more industries. | 4,96 |
| max_results | integer | No | Set the total number of job listings you want returned. | 10 |
| onsiteRemote | string | No | Choose whether the job is on-site, remote, or hybrid. | hybrid |
| experienceLevel | string | No | Filter jobs by seniority level. | midSeniorLevel |

### Output
| Field | Type | Description |
|---|---|---|
| jobTitle | string | The role name, so you can quickly see what position is being offered. |
| companyName | string | The employer name, useful for comparing companies at a glance. |
| location | string | Where the job is based or whether it is remote or hybrid. |
| workStyle | string | Shows whether the role is on-site, remote, or hybrid. |
| jobType | string | Tells you if the role is full time, part time, contract, or internship. |
| experienceLevel | string | Indicates the seniority level of the role, such as entry level or mid senior level. |
| salaryInfo | string | Any salary details that are available for the listing. |
| postingDate | string | When the job was posted, so you can focus on fresh openings. |
| jobLink | string | A link to the job listing when available. |
| jobId | string | A unique identifier that helps you track or reference the listing. |

### Sample Output
```json
{
  "jobTitle": "Senior Golang Engineer",
  "companyName": "CloudScale Labs",
  "location": "Remote - United States",
  "workStyle": "remote",
  "jobType": "fullTime",
  "experienceLevel": "midSeniorLevel",
  "salaryInfo": "$200k+",
  "postingDate": "2026-07-01",
  "jobLink": "https://www.linkedin.com/jobs/view/1234567890",
  "jobId": "1234567890"
}
````

### How It Works

1. You enter a keyword such as a job title, skill, or role type.
2. You add any filters you want, such as location, salary, work style, or seniority.
3. The actor searches for matching job listings and gathers the most useful details.
4. If you ask for more results, it keeps collecting them until it reaches your limit.
5. You review the results in a simple format that is easy to sort, export, or share.

### Getting Started

Getting started is easy and does not require any coding knowledge. Click **Try for free**, fill in your keyword and any filters you want, then click **Run**. The actor will return matching job listings in a clean format that you can review right away. You can download the results as JSON, CSV, or Excel, depending on how you want to use them.

### Frequently Asked Questions

#### Do I need technical skills?

No. This actor is designed for business users, recruiters, researchers, and job seekers who want straightforward results. You only need to enter a keyword and choose any filters that matter to you.

#### How fast does it run?

It usually runs quickly for small searches and may take a bit longer when you request more results or use several filters. The total time depends on how broad your search is and how many listings you want returned.

#### What format is the output?

You can export the results in JSON, CSV, or Excel. That makes it easy to review the listings in a spreadsheet, share them with your team, or import them into your own workflow.

#### Is this legal to use?

You should always use job data responsibly and in line with the terms and policies that apply to your use case. This actor is intended to help you collect publicly visible job listing information for legitimate business and research purposes.

#### Can I schedule it to run automatically?

Yes, you can set it up to run on a schedule if you want fresh job results on a regular basis. This is useful for tracking new openings, monitoring hiring trends, or keeping a shortlist up to date.

# Actor input Schema

## `sort` (type: `string`):

Choose how to sort the results.

## `start` (type: `string`):

Pagination offset. Use 0 for the first page, then increase by 100 for each next page.

## `salary` (type: `string`):

Filter jobs by minimum salary.

## `jobType` (type: `string`):

Choose the type of job you want to see.

## `distance` (type: `string`):

How far from the selected location to search. Use the distance option that matches your needs.

## `keywords` (type: `string`):

Enter the job title, skill, or search phrase you want to find.

## `titleIds` (type: `string`):

One or more title IDs to filter by. Separate multiple IDs with commas.

## `companyIds` (type: `string`):

One or more company IDs to limit results to. Separate multiple IDs with commas.

## `datePosted` (type: `string`):

Show jobs posted within this time range.

## `locationId` (type: `string`):

The location ID to search in.

## `functionIds` (type: `string`):

One or more job function IDs to filter by. Separate multiple IDs with commas.

## `industryIds` (type: `string`):

One or more industry IDs to filter by. Separate multiple IDs with commas.

## `max_results` (type: `integer`):

Maximum number of job listings to return.

## `onsiteRemote` (type: `string`):

Choose whether the job is on-site, remote, or hybrid.

## `experienceLevel` (type: `string`):

Filter jobs by seniority level.

## Actor input object example

```json
{
  "sort": "mostRelevant",
  "start": "0",
  "distance": "mostRelevant",
  "keywords": "golang",
  "datePosted": "anyTime",
  "locationId": "92000000",
  "max_results": 10
}
```

# 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 = {
    "keywords": "golang"
};

// Run the Actor and wait for it to finish
const run = await client.actor("datamagnet/linkedin-job-search-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 = { "keywords": "golang" }

# Run the Actor and wait for it to finish
run = client.actor("datamagnet/linkedin-job-search-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 '{
  "keywords": "golang"
}' |
apify call datamagnet/linkedin-job-search-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "LinkedIn Job Search Scraper Cookie-less 🍪 ✅",
        "description": "Search for job listings by keyword and filters, then get clean, easy-to-read results with the most useful details. Quickly narrow down roles by location, date posted, job type, seniority, salary, and work style.",
        "version": "0.0",
        "x-build-id": "EJFEXHkXH6y7Lhs1P"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/datamagnet~linkedin-job-search-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-datamagnet-linkedin-job-search-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/datamagnet~linkedin-job-search-scraper/runs": {
            "post": {
                "operationId": "runs-sync-datamagnet-linkedin-job-search-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/datamagnet~linkedin-job-search-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-datamagnet-linkedin-job-search-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": [
                    "keywords"
                ],
                "properties": {
                    "sort": {
                        "title": "Sort",
                        "enum": [
                            "mostRelevant",
                            "mostRecent"
                        ],
                        "type": "string",
                        "description": "Choose how to sort the results."
                    },
                    "start": {
                        "title": "Start",
                        "type": "string",
                        "description": "Pagination offset. Use 0 for the first page, then increase by 100 for each next page."
                    },
                    "salary": {
                        "title": "Salary",
                        "enum": [
                            "40k+",
                            "60k+",
                            "80k+",
                            "100k+",
                            "120k+",
                            "140k+",
                            "160k+",
                            "180k+",
                            "200k+"
                        ],
                        "type": "string",
                        "description": "Filter jobs by minimum salary."
                    },
                    "jobType": {
                        "title": "Job type",
                        "enum": [
                            "fullTime",
                            "partTime",
                            "contract",
                            "internship"
                        ],
                        "type": "string",
                        "description": "Choose the type of job you want to see."
                    },
                    "distance": {
                        "title": "Distance",
                        "type": "string",
                        "description": "How far from the selected location to search. Use the distance option that matches your needs."
                    },
                    "keywords": {
                        "title": "Keywords",
                        "type": "string",
                        "description": "Enter the job title, skill, or search phrase you want to find."
                    },
                    "titleIds": {
                        "title": "Title IDs",
                        "type": "string",
                        "description": "One or more title IDs to filter by. Separate multiple IDs with commas."
                    },
                    "companyIds": {
                        "title": "Company IDs",
                        "type": "string",
                        "description": "One or more company IDs to limit results to. Separate multiple IDs with commas."
                    },
                    "datePosted": {
                        "title": "Date posted",
                        "enum": [
                            "anyTime",
                            "pastMonth",
                            "pastWeek",
                            "past24Hours"
                        ],
                        "type": "string",
                        "description": "Show jobs posted within this time range."
                    },
                    "locationId": {
                        "title": "Location ID",
                        "type": "string",
                        "description": "The location ID to search in."
                    },
                    "functionIds": {
                        "title": "Function IDs",
                        "type": "string",
                        "description": "One or more job function IDs to filter by. Separate multiple IDs with commas."
                    },
                    "industryIds": {
                        "title": "Industry IDs",
                        "type": "string",
                        "description": "One or more industry IDs to filter by. Separate multiple IDs with commas."
                    },
                    "max_results": {
                        "title": "Max results",
                        "type": "integer",
                        "description": "Maximum number of job listings to return.",
                        "default": 10
                    },
                    "onsiteRemote": {
                        "title": "Work mode",
                        "enum": [
                            "onSite",
                            "remote",
                            "hybrid"
                        ],
                        "type": "string",
                        "description": "Choose whether the job is on-site, remote, or hybrid."
                    },
                    "experienceLevel": {
                        "title": "Experience level",
                        "enum": [
                            "internship",
                            "associate",
                            "director",
                            "entryLevel",
                            "midSeniorLevel",
                            "executive"
                        ],
                        "type": "string",
                        "description": "Filter jobs by seniority level."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
