StepStone Jobs Scraper
Pricing
from $3.00 / 1,000 job scrapeds
StepStone Jobs Scraper
Scrape StepStone.de job postings — title, company, salary range, skills, location, apply URL. MCP-ready, HTTP-only.
StepStone Jobs Scraper
Pricing
from $3.00 / 1,000 job scrapeds
Scrape StepStone.de job postings — title, company, salary range, skills, location, apply URL. MCP-ready, HTTP-only.
You can access the StepStone Jobs Scraper programmatically from your own applications by using the Apify API. You can also choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in API & Integrations in Apify Console.
{ "openapi": "3.0.1", "info": { "version": "1.0", "x-build-id": "ZW5UP8uIpTRG5dyEK" }, "servers": [ { "url": "https://api.apify.com/v2" } ], "paths": { "/acts/khadinakbar~stepstone-jobs-scraper/run-sync-get-dataset-items": { "post": { "operationId": "run-sync-get-dataset-items-khadinakbar-stepstone-jobs-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/khadinakbar~stepstone-jobs-scraper/runs": { "post": { "operationId": "runs-sync-khadinakbar-stepstone-jobs-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/khadinakbar~stepstone-jobs-scraper/run-sync": { "post": { "operationId": "run-sync-khadinakbar-stepstone-jobs-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", "properties": { "keyword": { "title": "Keyword", "type": "string", "description": "Free-text job search run on StepStone.de (e.g. 'data engineer' or 'pflegefachkraft'). Builds the search URL /work/{keyword}/in-{location}. Defaults to 'data engineer' when empty and no Start URLs are given. This is NOT a StepStone job-detail URL — paste those into Start URLs instead." }, "location": { "title": "Location", "type": "string", "description": "City or region in German spelling (e.g. 'Berlin', 'München', 'Nordrhein-Westfalen'). Combined with Keyword to build /work/{keyword}/in-{location}. Defaults to all of Germany ('deutschland') when empty. Ignored when Start URLs is provided." }, "startUrls": { "title": "Start URLs", "type": "array", "description": "Optional list of StepStone.de search-result or job-detail URLs to scrape as-is. When set, Keyword, Location, and the filters below are ignored. Accepts /jobs/... and /work/... search pages and /stellenangebote--...-inline.html detail links. Example: https://www.stepstone.de/work/java/in-berlin.", "items": { "type": "object", "required": [ "url" ], "properties": { "url": { "type": "string", "title": "URL of a web page", "format": "uri" } } } }, "postedWithin": { "title": "Date posted", "enum": [ "any", "1", "3", "7", "14", "30" ], "type": "string", "description": "Restrict results to jobs posted within the last N days, applied as StepStone's age facet. Allowed values: 'any', '1', '3', '7', '14', '30'. Defaults to 'any' (no date limit). Ignored when Start URLs is provided.", "default": "any" }, "workFromHomeOnly": { "title": "Remote / work-from-home only", "type": "boolean", "description": "When enabled, returns only jobs that offer remote / work-from-home, using StepStone's wfh facet. Defaults to false (all jobs). Applies only to keyword/location searches, not to Start URLs.", "default": false }, "maxItems": { "title": "Maximum jobs", "minimum": 1, "maximum": 100000, "type": "integer", "description": "Maximum number of job postings to return and bill for in this run (1 job = $0.003). Defaults to 100. The run stops once this many jobs are collected, even across multiple result pages. Increase for bulk exports.", "default": 100 }, "enrichDetails": { "title": "Fetch full job details", "type": "boolean", "description": "When enabled (default), each job's detail page is fetched to add the full description, employment type, and structured salary from StepStone's JobPosting data. Disable for a faster, leaner run returning only fields visible on the search page. Does not change the per-job price.", "default": true }, "proxyConfiguration": { "title": "Proxy configuration", "type": "object", "description": "Proxy used to reach StepStone. Defaults to Apify Residential proxies in Germany, which are required — StepStone is protected by Akamai Bot Manager and blocks datacenter IPs. Leave as default unless you have a specific reason to change it.", "default": { "useApifyProxy": true, "apifyProxyGroups": [ "RESIDENTIAL" ], "apifyProxyCountry": "DE" } }, "maxConcurrency": { "title": "Max concurrency", "minimum": 1, "maximum": 50, "type": "integer", "description": "Maximum number of pages fetched in parallel. Defaults to 10. Lower it if you hit blocks; raise it for faster large runs on a healthy proxy pool. Most users should leave this at the default.", "default": 10 }, "debugDumpHtml": { "title": "Debug: dump raw HTML", "type": "boolean", "description": "Internal debugging flag. When enabled, raw HTML and parsed JSON candidates are saved to the key-value store for extraction troubleshooting. Leave off for normal runs.", "default": false } } }, "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 } } } } } } } } }}OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.
OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.
By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.
You can download the OpenAPI definitions for StepStone Jobs Scraper from the options below:
If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.
You can also check out our other API clients: