Arbeitsagentur Scraper avatar

Arbeitsagentur Scraper

Pricing

$24.99/month + usage

Go to Apify Store
Arbeitsagentur Scraper

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

SilentFlow

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

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 startUrls to 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

IndustryApplication
Labor market researchTrack hiring trends across Germany by region, sector, or job type
Recruitment intelligenceMonitor competitor hiring, skill demand, and salary indicators
Job aggregatorsFeed structured German job data into your platform or app
Geographic analysisMap job density and opportunities using GPS coordinates
Academic researchStudy employment patterns and labor market dynamics
HR analyticsBenchmark job titles, employers, and contract types across industries

📥 Input parameters

ParameterTypeDescriptionDefault
keywordsstringJob title or keyword (e.g. Softwareentwickler, Pfleger, Marketing)
locationstringCity, region, or postal code (e.g. Berlin, München, 10115)
startUrlsarrayArbeitsagentur.de search URLs copied from your browser — overrides keywords/location
maxItemsintegerMaximum number of jobs to return50
proxyobjectProxy configuration (Apify Residential recommended)residential

Tip: Use startUrls to 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

CategoryFields
Identityrefnr, title, occupation
Employeremployer, industry, companySize, openPositions, isAnonymous
Locationlocation, city, postalCode, region, country, latitude, longitude
Job detailsofferType, workTime, contract, compensation, description, skills
DatespublishedDate, modifiedDate, startDate
Linksurl, applyUrl, externalUrl
MetascrapedAt

🚀 Examples

Search for software developers in Berlin

{
"keywords": "Softwareentwickler",
"location": "Berlin",
"maxItems": 100
}

Browse all jobs in a city

{
"location": "München",
"maxItems": 500
}
{
"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 ApifyClient
client = 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

MetricValue
Speed~50 jobs per second
Max resultsUp to 10,000 listings per search
Memory128–256 MB
Data freshnessReal-time — listings are current at scrape time
Total catalog500,000–800,000 active listings at any given time

💡 Tips for best results

  1. No keyword needed — leave keywords empty to browse all jobs in a location
  2. Use startUrls for advanced filters — set up your search on arbeitsagentur.de, copy the URL, and paste it into startUrls to apply any filter (work schedule, contract type, recency, etc.)
  3. Use postal codes — a PLZ like 10115 targets a more precise area than a city name
  4. Set maxItems generously — the catalog is large; start with a higher limit to avoid missing results
  5. 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