Arbeitsagentur.de Scraper avatar

Arbeitsagentur.de Scraper

Pricing

Pay per usage

Go to Apify Store
Arbeitsagentur.de Scraper

Arbeitsagentur.de Scraper

Automate job data extraction from Germany's Federal Employment Agency. Scrape vacancies, employment stats & labor market insights instantly. Perfect for recruitment automation & market analysis.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Share

Arbeitsagentur Scraper

Extract structured job listings from Germany's Arbeitsagentur Jobsuche portal. Collect current vacancies, employer names, job reference numbers, relevant location data, contract details, plain-text descriptions, and HTML-ready descriptions in a single run. This scraper is built for recruiters, labor-market analysts, lead generation workflows, and internal hiring dashboards.


Features

  • Search URL support — Start from an existing Arbeitsagentur search URL and keep its filters intact.
  • Simple input — Start from a working search URL or use only a keyword and location.
  • Detailed job enrichment — Collect contract type, compensation labels, location variants, and full descriptions.
  • Clean dataset output — Null, empty, and placeholder values are removed before items are stored.
  • HTML and text descriptions — Get both descriptionHtml for rendering and descriptionText for indexing or exports.
  • Pagination control — Cap both page count and total saved jobs for predictable runtimes.

Use Cases

Recruiting Intelligence

Track active roles by city or keyword. Build shortlists of companies currently hiring for the positions you care about.

Labor Market Research

Measure vacancy volume, publication recency, and category distribution across regions. Export the dataset for longitudinal reporting and market trend analysis.

Lead Generation

Find employers that are repeatedly hiring in a given area. Use the collected company names, listing pages, and external application URLs as prospecting inputs.

Job Monitoring

Schedule recurring runs for Berlin, Munich, or any custom search query. Compare new results over time and alert downstream systems when listings change.


Input Parameters

ParameterTypeRequiredDefaultDescription
startUrlStringNohttps://www.arbeitsagentur.de/jobsuche/suche?wo=Berlin&umkreis=25&angebotsart=1Use an existing Arbeitsagentur search URL directly.
keywordStringNoFree-text job search term.
locationStringNoSearch location such as Berlin.
collectDetailsBooleanNotrueFetch detailed descriptions and additional location and contract data.
results_wantedIntegerNo20Maximum number of jobs to save.
max_pagesIntegerNo10Maximum number of result pages to request.
proxyConfigurationObjectNo{"useApifyProxy": false}Optional proxy settings.

Output Data

Each dataset item can contain the following fields:

FieldTypeDescription
referenceNumberStringArbeitsagentur reference number for the vacancy.
publicUrlStringPublic Arbeitsagentur listing page.
detailApiUrlStringDirect detail endpoint used for enrichment.
titleStringJob title.
professionStringProfession label provided by the source.
companyStringEmployer name.
companyHashStringEmployer hash value when available.
employmentTypeStringListing type such as ARBEIT.
contractTypeStringContract duration label.
salaryStringCompensation label when available.
publicationDateStringLatest publication date.
firstPublishedDateStringFirst publication date from the detailed listing.
modifiedAtStringLast modification timestamp.
startDateStringSource start date.
startDateRangeObjectStart date range object from the detailed listing.
isFullTimeBooleanIndicates whether the listing is full-time.
descriptionTextStringPlain-text job description.
descriptionHtmlStringHTML version of the job description with tags such as p, strong, ul, li, and br.
externalUrlStringExternal application or source URL when present.
partnerNameStringPartner name attached to the listing.
partnerUrlStringPartner URL attached to the listing.
primaryLocationObjectMain location shown in the search results.
locationsArrayDeduplicated listing-relevant locations.
sourceStringFixed source label: arbeitsagentur.de.

Usage Examples

Start From an Existing Search URL

{
"startUrl": "https://www.arbeitsagentur.de/jobsuche/suche?wo=Berlin&umkreis=25&angebotsart=1",
"results_wanted": 20,
"max_pages": 2,
"collectDetails": true
}

Keyword Search In a Specific City

{
"keyword": "software engineer",
"location": "Berlin",
"results_wanted": 50,
"collectDetails": true
}

Fast Summary-Only Run

{
"keyword": "support",
"location": "Berlin",
"collectDetails": false,
"results_wanted": 30,
"max_pages": 1
}

Sample Output

{
"referenceNumber": "10001-1002717526-S",
"publicUrl": "https://www.arbeitsagentur.de/jobsuche/jobdetail/10001-1002717526-S",
"detailApiUrl": "https://rest.arbeitsagentur.de/jobboerse/jobsuche-service/pc/v4/jobdetails/MTAwMDEtMTAwMjcxNzUyNi1T",
"title": "Linux Administrator (m/w/d)",
"profession": "Fachinformatiker/in - Systemintegration",
"company": "NConsult GmbH",
"companyHash": "j0aPmLopen8lCLYNYFVQvSNU_Zt6R8pPPsn8NWUkVbA=",
"employmentType": "ARBEIT",
"contractType": "UNBEFRISTET",
"salary": "KEINE_ANGABEN",
"publicationDate": "2026-03-06",
"firstPublishedDate": "2026-03-06",
"modifiedAt": "2026-03-06T08:56:28.148",
"startDate": "2026-03-06",
"startDateRange": {
"from": "2026-03-06"
},
"isFullTime": true,
"descriptionText": "Willkommen bei NConsult GmbH – Ihre Partner für innovative IT-Lösungen! ...",
"descriptionHtml": "<p><strong>Willkommen bei NConsult GmbH – Ihre Partner für innovative IT-Lösungen!</strong></p><p>...</p>",
"primaryLocation": {
"city": "Berlin",
"region": "Berlin",
"country": "Deutschland",
"distanceKm": "0",
"coordinates": {
"latitude": 52.5112613,
"longitude": 13.4255145
}
},
"locations": [
{
"city": "Berlin",
"region": "BERLIN",
"country": "DEUTSCHLAND",
"coordinates": {
"latitude": 52.5112613,
"longitude": 13.4255145
}
}
],
"source": "arbeitsagentur.de"
}

Tips for Best Results

Use Search URLs for Exact Reproducibility

If you already have a working Arbeitsagentur search page, pass it as startUrl. This keeps the same filters without rebuilding them manually.

Keep QA and Test Runs Small

Use results_wanted: 20 and a low max_pages value for quick validation runs. Increase both values only after confirming the returned fields are what you need.

Disable Detail Collection for Speed

Set collectDetails to false when you only need listing summaries such as title, employer, publication date, and public URL.

Narrow Broad Searches

Berlin-wide job searches can return tens of thousands of matches. Use a specific keyword or a narrower startUrl when you need tighter datasets.

Proxy Configuration

This scraper usually works without proxies. If your environment requires one, pass proxyConfiguration explicitly.


Integrations

  • Google Sheets — Build lightweight vacancy trackers and recruiter dashboards.
  • Airtable — Store and filter jobs by company, city, or contract type.
  • Make — Trigger automations whenever new vacancies appear for a saved query.
  • Zapier — Send fresh listings into notifications, CRMs, or internal workflows.
  • Webhooks — Feed downstream systems with structured JSON.

Export Formats

  • JSON — Best for APIs and custom pipelines.
  • CSV — Useful for spreadsheet-based review and reporting.
  • Excel — Suitable for business users and stakeholders.
  • XML — Helpful for legacy integrations.

Frequently Asked Questions

Can I scrape a search URL directly?

Yes. Pass the Arbeitsagentur search page as startUrl and the scraper will reuse the query parameters from that URL.

Do I need collectDetails enabled?

Only if you want the full description, contract details, and all listing locations. Summary-only collection is faster.

Why do some records not have an externalUrl?

Not every listing exposes an external application page. When the source does not provide it, that field is omitted from the dataset.

Why are some address parts missing?

Some vacancies only expose city- or region-level location information. Empty fields are removed instead of being stored as null-like placeholders.

Why does locations no longer contain every office or branch address?

The actor keeps the listing-relevant locations and removes unrelated branch duplicates so Berlin jobs do not expand into large multi-city arrays.


Support

For issues or feature requests, use the actor page in the Apify Console.

Resources


This actor is intended for legitimate data collection, research, and monitoring workflows. Users are responsible for ensuring their usage complies with applicable laws, platform terms, and internal data handling requirements.