Bundesagentur Job Scraper — German Vacancies avatar

Bundesagentur Job Scraper — German Vacancies

Pricing

from $2.25 / 1,000 job scrapeds

Go to Apify Store
Bundesagentur Job Scraper — German Vacancies

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

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

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

FieldMeaning
jobId, title, companyNameBA reference number, role title, and published employer
location, postalCode, regionPublished job location
employmentOfferType, contractDuration, workTimeOffer, contract, and working-time signals
remotePossible, careerChangeSuitablePublic BA eligibility flags when available
description, salaryTextPublic description and salary statement when published
postedAt, updatedAt, availableFromVacancy timing metadata
externalUrl, sourceUrl, scrapedAtPublic 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 sourceUrl and scrapedAt, 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.

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.

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.