# Stepstone Jobs Scraper (`hello.datawizards/stepstone-jobs-scraper`) Actor

The Stepstone Jobs Scraper Actor extracts detailed job listings from Stepstone in JSON, including titles, companies, and remote work options. Ideal for job market analysis, recruitment, and skills tracking, it supports custom queries and proxies. Built by DataWizards for efficient data collection.

- **URL**: https://apify.com/hello.datawizards/stepstone-jobs-scraper.md
- **Developed by:** [datawizards](https://apify.com/hello.datawizards) (community)
- **Categories:** Jobs, Automation, Agents
- **Stats:** 46 total users, 3 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.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.

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

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### 📋 Stepstone Jobs Scraper · Apify Actor

Scrape **detailed job listings** from Stepstone with structured JSON output – ideal for job market analysis, recruitment intelligence, or career tracking.\
Built and maintained by [DataWizards](https://linkedin.com/in/data-wizards-aa8080342).

***

### 📌 What Is `Stepstone Jobs Scraper`?

The `Stepstone Jobs Scraper` Apify Actor enables you to **extract job listing data from Stepstone** by specifying search queries and portals. It retrieves comprehensive details like job titles, companies, locations, work-from-home options, and more, without manual browsing or login.

Perfect for recruiters, data analysts, HR professionals, and developers seeking to automate job data collection from Stepstone.

***

### 🧠 Key Features

- ✅ **Structured Job Data** in JSON format
- ✅ Extracts job title, company, location, work-from-home status, and description snippets
- ✅ Supports **custom search queries** and portal selection
- ✅ Proxy support via Apify Proxy for reliable scraping
- ✅ Configurable **item limit** for controlled data extraction
- ✅ Fast, scalable, and easy to integrate into workflows

***

### 🛠️ Input Schema

To use the actor, provide a JSON input with the following structure:

```json
{
    "itemLimit": 10,
    "portal": "www.stepstone.de",
    "proxyConfiguration": {
        "useApifyProxy": true
    },
    "queries": [
        "wordpress"
    ]
}
```

#### 🔐 Input Parameters

- **itemLimit**: Maximum number of job listings to scrape (e.g., `10`).
- **portal**: Stepstone domain to target (e.g., `www.stepstone.de`).
- **proxyConfiguration**: Set `useApifyProxy` to `true`. Optionally include `apifyProxyGroups: ["RESIDENTIAL"]` for enhanced reliability.
- **queries**: Array of search terms (e.g., `["wordpress"]`).

***

### 📤 Output Example

The actor returns structured JSON with detailed job listing information:

```json
[
  {
    "job_id": "job-item-12676822",
    "title": "IT Systemadministrator - Microsoft / Virtualisierung / Wordpress (m/w/d)",
    "company": "W² Bau GmbH",
    "location": "Waghäusel",
    "work_from_home": "Teilweise Home-Office",
    "posted_time": null,
    "job_url": "https://www.stepstone.de/stellenangebote--IT-Systemadministrator-Microsoft-Virtualisierung-Wordpress-m-w-d-Waghaeusel-W2-Bau-GmbH--12676822-inline.html",
    "company_logo": "data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==",
    "description_snippet": "Erfahrung im Bereich HTML, PHP und Anwendersupport Erfahrung im Bereich HTML, PHP und Anwendersupport"
  },
  {
    "job_id": "job-item-12658680",
    "title": "Frontend-Entwickler Javascript/React (m/w/d)",
    "company": "Wechselpilot GmbH",
    "location": "Hamburg",
    "work_from_home": "Teilweise Home-Office",
    "posted_time": null,
    "job_url": "https://www.stepstone.de/stellenangebote--Frontend-Entwickler-Javascript-React-m-w-d-Hamburg-Wechselpilot-GmbH--12658680-inline.html",
    "company_logo": "data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==",
    "description_snippet": "Nice to have, aber kein Deal-Breaker: Erfahrung Nice to have, aber kein Deal-Breaker: Erfahrung"
  }
]
```

***

### 🚀 Use Cases

- 📊 **Job Market Analysis** – Track job trends, skills demand, and remote work options.
- 🤝 **Recruitment Intelligence** – Source candidates or monitor competitor hiring.
- 📈 **Career Tracking** – Analyze job opportunities for specific roles or locations.
- 🛠️ **HR Automation** – Feed job data into recruitment platforms or dashboards.
- 🔍 **Skills Mapping** – Identify in-demand skills based on job descriptions.

***

### ✅ Best Practices

- **Use Residential Proxies**: Add `apifyProxyGroups: ["RESIDENTIAL"]` to avoid rate limits and ensure reliable scraping.
- **Set Reasonable Item Limits**: Use `itemLimit` to control data volume and optimize performance.
- **Validate Queries**: Ensure search queries are specific to avoid irrelevant results.
- **Batch Queries**: Combine multiple search terms in a single run to maximize efficiency.
- **Monitor Quotas**: Avoid excessive API calls to stay within Apify’s usage limits and prevent throttling by Stepstone.

***

### 🔧 Installation & Usage

1. **Set Up on Apify**:
   - Deploy the `Stepstone Jobs Scraper` actor from the [Apify Store](https://apify.com).
   - Configure your Apify API token for programmatic access.

2. **Run the Actor**:
   - Provide the input JSON with your queries, portal, and proxy settings.
   - Execute the actor via the Apify platform or API.

3. **Retrieve Data**:
   - Access the scraped job data in JSON format from the Apify dataset or integrate it into your application.

***

### 🤝 Support

Need custom fields, specific output formats, or integration assistance?

**DataWizards are here for you!**

📩 Email: <hello.datawizard@gmail.com>\
✉️ **Subject**: `Stepstone Jobs Scraper – Support Request`\
🔗 Connect: [linkedin.com/in/data-wizards-aa8080342](https://linkedin.com/in/data-wizards-aa8080342)

***

### 🧰 Customization & Enhancements

Want tailored solutions, such as additional job fields, simplified outputs, or integration with other platforms? DataWizards specializes in building custom scraping solutions to meet your needs.

**Let us craft the perfect tool for you!**\
💡 *DataWizards = Smart, scalable, and efficient data extraction.*

***

### 💬 Feedback & Bugs

Spotted a bug or have a feature request?

📧 Email: <hello.datawizard@gmail.com>\
🛠️ **Subject**: `Bug Report – Stepstone Jobs Scraper`

#### 🏁 Start scraping smarter with `Stepstone Jobs Scraper` — your go-to solution for extracting job listing data like a pro.

# Actor input Schema

## `queries` (type: `array`):

One or more queries where the crawler will start.

## `portal` (type: `string`):

Select the domain to search for jobs

## `itemLimit` (type: `integer`):

Specifies the maximum number of items to process.

## `proxyConfiguration` (type: `object`):

Specifies proxy servers that will be used by the scraper in order to hide its origin.

## Actor input object example

```json
{
  "queries": [
    "wordpress"
  ],
  "portal": "www.stepstone.de",
  "itemLimit": 10,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# 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 = {
    "queries": [
        "wordpress"
    ],
    "portal": "www.stepstone.de",
    "itemLimit": 10,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("hello.datawizards/stepstone-jobs-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 = {
    "queries": ["wordpress"],
    "portal": "www.stepstone.de",
    "itemLimit": 10,
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("hello.datawizards/stepstone-jobs-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "queries": [
    "wordpress"
  ],
  "portal": "www.stepstone.de",
  "itemLimit": 10,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call hello.datawizards/stepstone-jobs-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,hello.datawizards/stepstone-jobs-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/GYcOuE42OgU6eJL8s/builds/lOE7T42RAyP6RvoOk/openapi.json
