Arbeitsagentur Jobs Scraper — Official API (Germany)
Pricing
from $0.01 / actor start
Arbeitsagentur Jobs Scraper — Official API (Germany)
Search Germany's largest job board (Bundesagentur für Arbeit) through its official public API. Full job descriptions, salary ranges, home-office flags, geo coordinates. Fast and reliable — no blocking, no proxies.
Pricing
from $0.01 / actor start
Rating
0.0
(0)
Developer
Thomas Ehrler
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 hours ago
Last modified
Categories
Share
Search Germany's largest job board — the Bundesagentur für Arbeit Jobbörse with 1M+ live job listings — and get clean, structured JSON in seconds.
Unlike HTML scrapers, this actor uses the official public Jobsuche API (documented by the bundesAPI project). That means:
- ⚡ Fast & reliable — no browser, no blocking, no captchas, no proxies
- 📄 Full job descriptions — complete posting text, not just teasers
- 💶 Salary ranges —
salaryFrom/salaryTowhere employers provide them - 🏠 Home-office & working-time flags — full-time, part-time, shift, mini-job
- 📍 Geo coordinates — every job location with lat/lon for mapping
- 🔁 Monitoring-ready — filter by "published in the last N days" and run on a schedule
Use cases
- Job-market analytics — demand by region, profession, salary levels
- HR / recruiting tech — feed fresh German job postings into your product
- Job alerts — schedule daily runs with
publishedSince: 1for new listings - Lead generation — companies that are hiring are companies that are buying
- AI agents — clean input/output schema, works out of the box via MCP
Input example
{"keyword": "Pflegefachkraft","location": "München","radiusKm": 50,"publishedSince": 7,"excludeTemporaryEmployment": true,"includeDetails": true,"maxItems": 500}
Output example
{"title": "Elektriker/in","profession": "Elektroinstallateur/in","company": "Die Elbmonteure Service GmbH","salaryFrom": 3200,"salaryTo": 3800,"homeOfficePossible": false,"workingTime": { "fullTime": true, "shiftNightWeekend": false },"entryFrom": "2026-08-01","firstPublished": "2026-07-19","locations": [{ "zip": "10179", "city": "Berlin", "region": "Berlin", "country": "Deutschland", "lat": 52.5132, "lon": 13.4157 }],"refnr": "15318-0B3L4BVB1PA9Q1KJ-S","jobUrl": "https://www.arbeitsagentur.de/jobsuche/jobdetail/15318-0B3L4BVB1PA9Q1KJ-S","description": "Verstärke die Elbmonteure …"}
Tips
- German search terms return the best results (
Kochbeatscook). - Leave
locationempty for nationwide searches. - Set
includeDetails: falsefor large volume runs where you only need structured metadata — it roughly doubles the speed. - For daily monitoring, create a Schedule with
publishedSince: 1and connect a webhook or export integration.
Data & fair use
The data comes from the public Jobsuche API of the Bundesagentur für Arbeit using its documented public client id. This actor is not affiliated with or endorsed by the Bundesagentur für Arbeit. Only public job postings and employer information are accessed — no applicant or personal data. The actor throttles its requests to keep load on the public API low.
What does a run cost?
| Job postings | Cost |
|---|---|
| 100 | $0.11 |
| 1,000 | $1.01 |
| 10,000 | $10.01 |
$0.01 per run start plus $0.001 per job. Turning includeDetails off roughly
halves the run time — the price stays the same.
FAQ
Is there an official Arbeitsagentur API? Yes, and this actor uses it: the public Jobsuche API of the Bundesagentur für Arbeit. That is why runs are fast and never blocked — but the raw API returns nested German field names, paginates awkwardly and needs a separate call per job description. This actor handles all of that.
How do I get new jobs only?
Set publishedSince to 1 and schedule the actor daily. Each run then returns
only what was posted since yesterday.
Can I search all of Germany at once?
Yes — leave location empty. With a location set, radiusKm controls how far
around it the search reaches.
Why do some jobs have no salary?
Salary fields are optional for employers in Germany. salaryFrom / salaryTo
are filled whenever the employer published a range; otherwise they stay empty
rather than being estimated.
Does this include applicant or personal data? No. Only public job postings and the employer information attached to them.
How do I export to Excel? Run the actor, then export the dataset as CSV or XLSX from the Apify console, or pull it through the API into Google Sheets.
Related actors
| Actor | What it does |
|---|---|
| kununu Scraper | Employer ratings, salaries and benefits for the same DACH companies |
| EU Public Tenders (TED) | Public contracts across all 27 EU member states |
| Messe München Exhibitors | Trade-fair exhibitors with address, e-mail and phone |
Support
Found an issue or missing a feature (new filters, delta mode, exports)? Open an issue in the Issues tab — response within 1–2 business days.