Arbeitsagentur Scraper
Pricing
$24.99/month + usage
Arbeitsagentur Scraper
Scrape job listings from Bundesagentur für Arbeit (arbeitsagentur.de), Germany's largest public job board with 1M+ offers. Extract job title, employer, location, salary, work schedule, contract type, full description, and employer profile with website and contact email. Filter by keyword and city.
Pricing
$24.99/month + usage
Rating
0.0
(0)
Developer

SilentFlow
Actor stats
1
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Arbeitsagentur Jobs Scraper
Extract structured job listings from Bundesagentur für Arbeit (arbeitsagentur.de) — Germany's largest public job database with over 500,000 active listings. Search by keyword and location, or paste any filtered search URL directly from your browser.
✨ Why use this scraper?
- 🇩🇪 Official German job database — covers the full Bundesagentur für Arbeit catalog
- ⚡ Blazing fast — results in seconds, no browser automation needed
- 🔍 Any filter, any search — use
startUrlsto apply all site filters (type, schedule, contract, recency) - 📍 GPS coordinates — every listing includes lat/lon for geospatial analysis
- 💼 All offer types — employment, apprenticeships, internships, self-employment
- 🔗 Direct apply links — captures external application URLs when available
🎯 Use cases
| Industry | Application |
|---|---|
| Labor market research | Track hiring trends across Germany by region, sector, or job type |
| Recruitment intelligence | Monitor competitor hiring, skill demand, and salary indicators |
| Job aggregators | Feed structured German job data into your platform or app |
| Geographic analysis | Map job density and opportunities using GPS coordinates |
| Academic research | Study employment patterns and labor market dynamics |
| HR analytics | Benchmark job titles, employers, and contract types across industries |
📥 Input parameters
| Parameter | Type | Description | Default |
|---|---|---|---|
keywords | string | Job title or keyword (e.g. Softwareentwickler, Pfleger, Marketing) | — |
location | string | City, region, or postal code (e.g. Berlin, München, 10115) | — |
startUrls | array | Arbeitsagentur.de search URLs copied from your browser — overrides keywords/location | — |
maxItems | integer | Maximum number of jobs to return | 50 |
proxy | object | Proxy configuration (Apify Residential recommended) | residential |
Tip: Use
startUrlsto apply any filter available on the site (full-time, part-time, remote, apprenticeships, fixed-term, etc.) without needing extra parameters.
📊 Output data
{"refnr": "12117-28654541-YF-S","title": "Senior-Softwareentwickler*in (m/w/d)","occupation": "Softwareentwickler/in","employer": "EBP Deutschland GmbH","location": "Berlin, 10557","city": "Berlin","postalCode": "10557","region": "Berlin","country": "Deutschland","latitude": 52.5239066,"longitude": 13.3578666,"offerType": "Employment","workTime": ["Vollzeit"],"contract": "Unbefristet","industry": "IT & Software","companySize": "50-249","openPositions": 2,"compensation": "55.000–70.000 € pro Jahr","description": "Wir suchen eine/n erfahrene/n Softwareentwickler*in...","skills": ["Java", "Spring Boot", "PostgreSQL"],"publishedDate": "2026-03-02","modifiedDate": "2026-03-02T08:10:42.749","startDate": "2026-03-02","isAnonymous": false,"url": "https://www.arbeitsagentur.de/jobsuche/jobdetails/12117-28654541-YF-S","applyUrl": "https://www.yourfirm.de/apply/12345","externalUrl": "https://www.yourfirm.de/job/detail/...","scrapedAt": "2026-03-03T16:17:29Z"}
🗂️ Data fields
| Category | Fields |
|---|---|
| Identity | refnr, title, occupation |
| Employer | employer, industry, companySize, openPositions, isAnonymous |
| Location | location, city, postalCode, region, country, latitude, longitude |
| Job details | offerType, workTime, contract, compensation, description, skills |
| Dates | publishedDate, modifiedDate, startDate |
| Links | url, applyUrl, externalUrl |
| Meta | scrapedAt |
🚀 Examples
Search for software developers in Berlin
{"keywords": "Softwareentwickler","location": "Berlin","maxItems": 100}
Browse all jobs in a city
{"location": "München","maxItems": 500}
Scrape from a filtered browser search
{"startUrls": [{"url": "https://www.arbeitsagentur.de/jobsuche/suche?angebotsart=4&was=Ausbildung&wo=M%C3%BCnchen&umkreis=50"}],"maxItems": 100}
Recent healthcare jobs in Hamburg
{"keywords": "Krankenpfleger","location": "Hamburg","maxItems": 200}
💻 Integrations
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("SilentFlow/arbeitsagentur-scraper").call(run_input={"keywords": "Softwareentwickler","location": "Berlin","maxItems": 100,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{item['title']} - {item['employer']} ({item['city']})")
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('SilentFlow/arbeitsagentur-scraper').call({keywords: 'Softwareentwickler',location: 'Berlin',maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach(item => {console.log(`${item.title} - ${item.employer} (${item.city})`);});
📈 Performance & limits
| Metric | Value |
|---|---|
| Speed | ~50 jobs per second |
| Max results | Up to 10,000 listings per search |
| Memory | 128–256 MB |
| Data freshness | Real-time — listings are current at scrape time |
| Total catalog | 500,000–800,000 active listings at any given time |
💡 Tips for best results
- No keyword needed — leave
keywordsempty to browse all jobs in a location - Use startUrls for advanced filters — set up your search on arbeitsagentur.de, copy the URL, and paste it into
startUrlsto apply any filter (work schedule, contract type, recency, etc.) - Use postal codes — a PLZ like
10115targets a more precise area than a city name - Set maxItems generously — the catalog is large; start with a higher limit to avoid missing results
- Combine keyword + location — both together give the most relevant and precise results
❓ FAQ
What data is available without detail pages? Title, employer, location (with GPS), offer type, published date, and job URL — for every result. Detail pages add salary, skills, description, contract type, company size, and apply links.
How many jobs are available? The Bundesagentur für Arbeit has 500,000–800,000 active listings at any given time across all categories and regions.
How do I filter by work schedule or contract type?
Apply the filters on arbeitsagentur.de, copy the resulting URL from your browser, and pass it as a startUrls entry. All site filters are supported this way.
Can I filter by salary? The API does not support salary filtering, but salary information is included in the output when employers provide it.
How fresh is the data? Listings are updated in real time on the platform. The scraper always returns the current state.
Does it scrape all of Germany?
Yes — leave location empty to search nationwide, or specify any city, region, or postal code.
📬 Support
We're building this scraper for you, your feedback makes it better for everyone!
- 🐛 Found a bug? Open an issue directly on this actor's page, we'll fix it fast
- 💡 Need a feature? Tell us what's missing and we'll prioritize it
- ⚙️ Custom solutions: Contact us for enterprise integrations or high-volume needs
We respond to every issue, usually within 24 hours. Don't hesitate, even small suggestions help!
Check out our other scrapers: SilentFlow on Apify