Bundesagentur Job Scraper — German Vacancies
Pricing
from $2.25 / 1,000 job scrapeds
Bundesagentur Job Scraper — German Vacancies
Search Germany's Bundesagentur für Arbeit public Jobsuche feed and return normalized vacancies with employer, location, contract, remote-work and date signals. Use for recruitment research and labor-market analysis; not for applicant data.
Pricing
from $2.25 / 1,000 job scrapeds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Bundesagentur Job Scraper
Bundesagentur Job Scraper searches public vacancies from Germany's Bundesagentur für Arbeit (BA) Jobsuche API and returns one normalized record per job. Use it for German recruitment research, job-market analysis, vacancy monitoring, and data pipelines that need current roles, employers, locations, work arrangements, dates, and public descriptions.
When to use it
Use this actor when you need structured public German job listings from the BA Jobsuche catalogue. Start with a role query and a city, then use the result cap to keep a predictable collection size. The actor can also enrich specific BA reference numbers returned by an earlier collection.
Its focused public-vacancy scope works well alongside your authorized ATS or company-career data sources when a workflow also needs those sources. This actor requests the public BA listing and detail endpoints and keeps the returned dataset centered on vacancy information.
What each job record includes
| Field | Meaning |
|---|---|
jobId, title, companyName | BA reference number, role title, and published employer |
location, postalCode, region | Published job location |
employmentOfferType, contractDuration, workTime | Offer, contract, and working-time signals |
remotePossible, careerChangeSuitable | Public BA eligibility flags when available |
description, salaryText | Public description and salary statement when published |
postedAt, updatedAt, availableFrom | Vacancy timing metadata |
externalUrl, sourceUrl, scrapedAt | Public application/source links and provenance |
Input example
{"searchQuery": "Softwareentwickler","location": "Berlin","radiusKm": 25,"maxResults": 20,"includeJobDetails": true,"responseFormat": "concise"}
Output example
{"jobId": "12288-4891612390-S","title": "Softwareentwickler Oracle (m/w/d)","companyName": "Example GmbH","location": "Berlin, Deutschland","employmentOfferType": "ARBEIT","contractDuration": "UNBEFRISTET","workTime": ["full-time"],"remotePossible": false,"description": "Develop and maintain software systems…","postedAt": "YYYY-MM-DD","externalUrl": "https://careers.example.com/jobs/123","source": "bundesagentur-fuer-arbeit","scrapedAt": "YYYY-MM-DDTHH:MM:SS.000Z"}
Pricing
This actor uses Pay per event + platform usage. It charges $0.00005 for actor start and $0.00225 for each validated job persisted to the dataset; Apify platform compute and storage usage are additional. maxResults caps job events, so a collection requesting 20 results has a maximum job-event charge of $0.045 plus the start event and platform usage. Check the live Actor Pricing tab for the current effective event prices and platform-usage details.
API and MCP use
Run through the Apify API with the same input object:
curl -X POST 'https://api.apify.com/v2/acts/khadinakbar~bundesagentur-job-scraper/runs?token=YOUR_APIFY_TOKEN' \-H 'content-type: application/json' \-d '{"searchQuery":"Data Engineer","location":"München","maxResults":10}'
Agents can call this actor when they need public German BA vacancies with explicit location and result limits.
Use the Bundesagentur Job Scraper to collect up to 10 Data Engineer vacancies within 25 km of Berlin. Request concise public details, inspect the dataset readback, cite each
sourceUrlandscrapedAt, and report the collection outcome with the bounded job-event cost.
Reliability and result semantics
Every collection writes compact OUTPUT and detailed RUN_SUMMARY records. Outcome records distinguish a complete collection, a valid empty search, a user-input refinement, a partial collection that preserves useful records, and a source-availability result. Detail enrichment complements listing-level collection, allowing a valid listing record to remain useful when a detail response is temporarily unavailable.
Best results
Use German role terminology, a specific city, and 10–25 results for a focused current-market sample. Choose detailed only when downstream workflows truly need longer descriptions. Use returned jobId values in jobReferenceNumbers to refresh known vacancies without repeating a broad search. Larger collections continue through the public result pages until maxResults is reached.
Builder's note
I designed this actor around BA's structured public API rather than browser rendering, which keeps small focused searches quick and makes provenance explicit. My goal is a compact, stable job record that works cleanly in recruiting and labor-market workflows while preserving source freshness through sourceUrl and scrapedAt.
Focused standalone workflow
This actor works as a focused standalone workflow for current German vacancy collection. Start with a role and location, validate the returned public fields, then schedule the same bounded input when a workflow needs a consistent time series.
Legal and responsible use
Data comes from public Bundesagentur für Arbeit Jobsuche responses, with sourceUrl and scrapedAt on every record. Respect applicable law, the source's terms, and your users' privacy; keep workflows focused on public vacancy information.
Related workflow
For a broader German hiring view, combine this BA feed with company-career-page or ATS-specific data where you have an appropriate public source. Keep source attribution and freshness fields when merging datasets.
Feedback
If an API field changes or a result needs a new normalized field, open an issue with a redacted sample reference number and the expected public field.