Arbeitnow Scraper
Pricing
from $0.76 / 1,000 item extracteds
Arbeitnow Scraper
Extract current Arbeitnow EU and DACH vacancies with company, location, remote status, tags, job types, descriptions, timestamps, and application URLs.
Pricing
from $0.76 / 1,000 item extracteds
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Collect current vacancies from the public Arbeitnow job board API and turn them into normalized, integration-ready records.
The Actor scans Arbeitnow pages, applies optional keyword, location, remote, tag, and job-type filters, and saves each matching vacancy to the default Apify dataset. Every row includes stable identity, employer, location, remote status, taxonomy, description, job URL, source timestamp, and collection timestamp.
Use it for one-time EU and DACH job research, scheduled recruiting-feed refreshes, labor-market snapshots, and downstream vacancy alerts.
What can the Arbeitnow Scraper do?
- Export current Arbeitnow vacancies to JSON, CSV, Excel, XML, or RSS through Apify datasets.
- Search title, company, location, tags, job types, and description with one case-insensitive keyword.
- Restrict results to a location substring such as
BerlinorGermany. - Return only jobs that Arbeitnow marks as remote.
- Require one or more source tags or job types.
- Scan multiple public API pages while respecting explicit item and page limits.
- Preserve the source's Unix timestamp and provide an ISO 8601 equivalent.
- Produce a normalized plain-text description, with original HTML available on request.
- Run on an Apify schedule so a dataset or webhook can feed recurring monitoring.
The Actor uses Arbeitnow's public JSON job-board API. It does not need a browser, account, cookie, or proxy.
Who is this Actor for?
Recruiters and talent teams
Build a current pipeline of EU and DACH vacancies, compare employer activity, or identify remote openings without manually copying job pages.
Job aggregation teams
Receive stable slugs, timestamps, source URLs, and structured arrays that can be mapped into an existing vacancy model.
Labor-market researchers
Create repeatable snapshots for counts by company, location, remote status, tag, or job type. Store snapshots in separate datasets or forward each run to a warehouse.
Developers and automation teams
Call the Actor from JavaScript, Python, cURL, Apify integrations, or MCP. The default dataset works directly with webhooks, Make, Zapier, Google Sheets, and cloud storage exports.
What Arbeitnow data is extracted?
| Field | Type | Meaning |
|---|---|---|
slug | string | Stable source slug for deduplication and change tracking |
title | string | Vacancy title |
company | string | Employer name supplied by Arbeitnow |
location | string | Source location text |
remote | boolean | Arbeitnow's remote flag |
tags | string[] | Source categories or skills |
jobTypes | string[] | Source job types, such as Full Time |
description | string | Normalized plain-text vacancy description |
descriptionHtml | string, optional | Original source HTML when requested |
applicationUrl | URL | Canonical Arbeitnow vacancy/application page |
sourceUrl | URL | Canonical source page |
sourceCreatedAt | date-time | Source timestamp converted to ISO 8601 |
sourceCreatedAtUnix | integer | Original Unix source timestamp |
scrapedAt | date-time | Time this Actor collected the row |
source | string | Always arbeitnow.com |
Field values reflect the source. A remote flag of false means Arbeitnow did not mark the listing remote; it is not an independent work-policy assessment.
Getting started
- Open the Actor in Apify Console.
- Enter a keyword or leave it empty to collect the latest jobs.
- Add location, remote, tags, or job-type filters if needed.
- Choose
maxItemsand keepmaxPageslarge enough for narrow filters. - Click Start.
- Open the default dataset when the run finishes.
- Export it or connect a webhook, integration, API client, or scheduled Task.
A useful first input is:
{"query": "software","maxItems": 10,"maxPages": 5}
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
query | string | none | Text matched across title, company, location, tags, job types, and description |
location | string | none | Substring matched against the source location |
remoteOnly | boolean | false | Keep only source records marked remote |
tags | string[] | none | Require every supplied tag substring |
jobTypes | string[] | none | Require every supplied job-type substring |
includeDescriptionHtml | boolean | false | Include original source description HTML |
maxItems | integer | 20 | Maximum matching rows, from 1 to 10,000 |
maxPages | integer | 20 | Maximum public API pages scanned, from 1 to 100 |
All text matching is case-insensitive. Multiple tags and job types use AND logic. For example, two required tags must both match the source tag list.
An invalid empty keyword, empty array value, fractional limit, or out-of-range limit fails the run clearly instead of changing the requested scope.
Filter examples
Remote jobs
{"remoteOnly": true,"maxItems": 25,"maxPages": 10}
Berlin software vacancies
{"query": "software","location": "Berlin","maxItems": 50,"maxPages": 20}
Full-time roles with original HTML
{"jobTypes": ["Full Time"],"includeDescriptionHtml": true,"maxItems": 100,"maxPages": 20}
Output example
A current row has this shape (values change as Arbeitnow refreshes its board):
{"slug": "finanzbuchhalter-voll-oder-teilzeit-boblingen-hybrid-433749","title": "Finanzbuchhalter (m/w/d) Voll- oder Teilzeit, Böblingen (hybrid)","company": "Thorit","location": "Böblingen Headquater","remote": false,"tags": ["Finance Team"],"jobTypes": ["Full Time"],"description": "Worum es geht\nDie Stelle ist in Vollzeit und in Teilzeit ...","applicationUrl": "https://www.arbeitnow.com/jobs/companies/thorit/finanzbuchhalter-voll-oder-teilzeit-boblingen-hybrid-433749","sourceUrl": "https://www.arbeitnow.com/jobs/companies/thorit/finanzbuchhalter-voll-oder-teilzeit-boblingen-hybrid-433749","sourceCreatedAt": "2026-08-26T16:20:24.000Z","sourceCreatedAtUnix": 1787766024,"scrapedAt": "2026-08-26T20:00:00.000Z","source": "arbeitnow.com"}
The default dataset contains only accepted matching rows. Duplicates in one run are removed by source slug, and rejected or malformed rows are not charged as items.
How much does it cost to extract Arbeitnow jobs?
The Actor uses pay-per-event pricing:
- Start: $0.001 once per run.
- Job item: tiered by your Apify plan; the BRONZE price is $0.0012667 per saved vacancy.
Example event counts are straightforward: a run saving 10 jobs creates one start event and 10 item events; 100 saved jobs creates one start event and 100 item events; 1,000 saved jobs creates one start event and 1,000 item events. Multiply those counts by the active prices shown above for your plan.
Your active Apify plan determines the exact item tier. Failed fetches, filtered-out records, and duplicate rows do not create item charges.
Recurring EU and DACH vacancy feeds
Create an Apify Task from a tested input and schedule it hourly, daily, or weekly. Then choose one of these patterns:
- Export each run's dataset to a dated object in cloud storage.
- Send the dataset ID to a warehouse loader through a webhook.
- Compare
slugandsourceCreatedAtagainst a previous snapshot. - Notify a recruiting channel only when a new matching slug appears.
- Aggregate counts by company, location, remote flag, tag, or job type.
This Actor emits current source data; it does not maintain historical state or send alerts by itself. Apify schedules, datasets, webhooks, and your destination system provide those workflow layers.
Pagination, freshness, and limits
Arbeitnow states that its public job-board API is updated hourly and ordered by created_at. Source availability and timestamp semantics remain controlled by Arbeitnow.
maxItems limits saved matches, not scanned source rows. A narrow query may need more pages to find enough matches. Increase maxPages when appropriate, but avoid scanning unnecessary pages.
The Actor requests pages sequentially to avoid abusing the free public API. Transient network failures and server errors receive bounded retries; deterministic client errors fail immediately.
API usage with cURL
Start a run and wait for its dataset items:
curl -X POST \"https://api.apify.com/v2/acts/automation-lab~arbeitnow-eu-dach-jobs-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"remoteOnly":true,"maxItems":10,"maxPages":5}'
For production systems, keep tokens in secret storage rather than source code or shell history.
API usage with JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/arbeitnow-eu-dach-jobs-scraper').call({query: 'software',maxItems: 25,maxPages: 10,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
API usage with Python
import osfrom apify_client import ApifyClientclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('automation-lab/arbeitnow-eu-dach-jobs-scraper').call(run_input={'location': 'Berlin', 'maxItems': 25, 'maxPages': 10})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
Use with Apify MCP
Add Apify MCP to Claude Code:
claude mcp add --transport http apify \"https://mcp.apify.com?tools=automation-lab/arbeitnow-eu-dach-jobs-scraper"
Claude Desktop, Cursor, and VS Code setup: add this HTTP server configuration in the client's MCP settings:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com?tools=automation-lab/arbeitnow-eu-dach-jobs-scraper"}}}
Example prompts:
- “Run the Arbeitnow scraper for 20 remote jobs and summarize companies and locations.”
- “Collect current software vacancies from Arbeitnow and return a CSV-ready table.”
- “Fetch 50 Arbeitnow jobs for this week's DACH hiring snapshot.”
Integrations
Google Sheets
Schedule the Actor and use the Apify Google Sheets integration to append current rows. Use slug as a deduplication key in your sheet or automation.
Webhooks
Trigger a webhook when the run succeeds. The webhook payload provides the dataset ID so a downstream service can fetch only that run's rows.
Make and Zapier
Start an Actor run from a workflow, wait for completion, and iterate over dataset items. Route remote jobs, specific companies, or selected tags to separate destinations.
Data warehouses
Export JSON or CSV, or use the dataset API to load records into BigQuery, Snowflake, PostgreSQL, or another warehouse. Preserve both source and scrape timestamps to distinguish publication time from collection time.
Legality and responsible use
Arbeitnow exposes the route as a free public jobs API and asks users not to abuse it. Use reasonable item/page limits and schedules, link back to source job pages, and review Arbeitnow's current terms before production use.
Job listings may contain personal or employer information. Process and retain data only where you have a lawful purpose, respect applicable privacy and employment rules, and avoid republishing misleading, expired, or altered listings.
The Actor does not bypass access controls, log in, or collect private account data.
Limitations
- Results are limited to records currently returned by the Arbeitnow public API.
- The Actor cannot independently verify whether a vacancy remains open.
applicationUrlis the canonical Arbeitnow job page; the source API does not expose a separate employer ATS apply URL.- Filters are text matches against source-provided values, not semantic classification.
- Location strings are not geocoded or normalized into country/region fields.
- Visa sponsorship is not a dedicated source field, so this Actor does not claim a verified sponsorship filter.
- Source descriptions may contain formatting artifacts after HTML-to-text conversion.
- A low
maxPagesvalue can stop before enough narrow-filter matches are found. - The Actor does not store prior runs, compare changes, or send alerts on its own.
Troubleshooting
My run returned fewer jobs than maxItems
maxItems is a ceiling, not a guaranteed count. Filters may have fewer current matches, or maxPages may stop scanning first. Check the input and increase maxPages for narrow searches.
My run returned zero jobs
Remove filters one at a time and test a broad input such as {"maxItems": 10, "maxPages": 5}. Source taxonomies and location text can change, so inspect a broad dataset before choosing exact tags or job types.
The run failed with an Arbeitnow API error
Check the run log and Arbeitnow's public API availability. Transient errors already receive bounded retries. Retry later rather than launching many simultaneous runs.
Why is descriptionHtml missing?
It is opt-in to keep normal datasets smaller. Set includeDescriptionHtml to true when your downstream renderer needs the original formatting.
FAQ
Does the Actor require an Arbeitnow API key?
No. It uses Arbeitnow's public job-board API without login.
Does it require a proxy?
No. The current route is a direct public JSON API, so proxy configuration would add cost without adding value.
Can it collect all current jobs?
Use no filters, a sufficiently high maxItems, and enough maxPages. The exact total and page availability are controlled by the source and can change.
Can it find Arbeitnow Germany jobs?
Yes, when Germany or a German place appears in source title, location, tags, or description. Use location for source location text or query for broader matching. The Actor does not infer country from every place name.
Can it filter visa sponsorship jobs?
There is no verified sponsorship field in the public API. A keyword can find listings that mention sponsorship, but that text match should not be treated as a guarantee.
Can I monitor new or changed jobs?
Schedule repeated runs and compare slug, sourceCreatedAt, and relevant fields in your own storage or automation. The Actor supplies snapshot data; it does not retain a cross-run change ledger.
Can I use the output commercially?
Review Arbeitnow's current terms and applicable law for your use case. This Actor is a collection tool, not legal advice or a license to republish source content.
Related Automation Lab Actors
- Remote Jobs Multi-Board Feed combines supported remote-job boards into a normalized source-attributed feed.
- Company Career Page Jobs Scraper extracts supplied public employer career pages.
- StepStone Group Jobs Feed targets supported StepStone Group portals for broader regional hiring research.
Choose this Actor when Arbeitnow itself is the required source and you need its full current API records, source timestamps, descriptions, and filters.
Support
For reproducible help, include the run URL, input with secrets removed, expected result, and one example source job. Do not post API tokens or private candidate data.