AMS Austria Jobs Scraper: Austrian Public Job Portal
Pricing
from $5.00 / 1,000 results
AMS Austria Jobs Scraper: Austrian Public Job Portal
Extract job listings from jobs.ams.at, Austria's public employment service: title, company, location, Bundesland, employment type and job details. For recruiters, HR platforms and job aggregators.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
NanoScrape
Maintained by CommunityActor stats
2
Bookmarked
35
Total users
4
Monthly active users
5 days ago
Last modified
Categories
Share
AMS.at Job Scraper - Austrian Employment Service
English
Overview
This Apify actor scrapes job listings from the Austrian Public Employment Service (Arbeitsmarktservice Oesterreich - AMS.at). It retrieves job postings from the official AMS JobRoom platform at jobs.ams.at.
HTTP-only -- no browser required. Uses the AMS search and detail APIs directly with HMAC-SHA512 authentication. Runs on 128MB, ~100x lighter than browser-based scrapers.
The scraper supports filtering by:
- Multiple keywords/professions (Beruf) -- deduplicated across queries
- Location/city (Arbeitsort)
- Employment type (Vollzeit, Teilzeit, Geringfuegig)
Features
- HTTP-Only: No browser needed -- uses AMS search + detail APIs directly
- Automatic HMAC Key Extraction: Extracts authentication key from JS bundle if hardcoded key becomes stale
- Multi-Query Search: Run multiple search keywords in a single actor run with cross-query deduplication
- Direct URL Mode: Check status of specific job listings by URL
- Full Job Details: Optional detailed scraping including contact information via API
- Per-Query Limits: Control how many results each keyword produces
- Built-in Proxy Handling: Proxies are managed for you, no setup needed
- Deduplication: Automatic removal of duplicate job listings across all queries
- Pay-Per-Result: Supports Apify monetization events
Input Parameters
{"searchQueries": ["Software Developer", "Kellner", "Mechaniker"],"location": "Wien","maxResultsPerQuery": 100,"maxResults": 0,"includeJobDetails": true}
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
searchQueries | string[] | No | [] | One or more search keywords. Each runs as a separate search. Results deduplicated across queries. |
searchQuery | string | No | "" | Single keyword (backward compatible). Use searchQueries for multiple. |
location | string | No | "" | City or region name (e.g., "Wien", "Salzburg") |
bundesland | string | No | "" | Austrian federal state (Wien, Niederoesterreich, Oberoesterreich, etc.) |
employmentType | string | No | "" | Employment type: "Vollzeit", "Teilzeit", or "Geringfuegig" |
sortBy | string | No | "_SCORE" | Sort order: "_SCORE" (relevance) or "_DATE" (newest) |
maxResultsPerQuery | integer | No | 100 | Maximum results per search keyword |
maxResults | integer | No | 0 | Total cap across all queries. 0 = unlimited (each query limited by maxResultsPerQuery) |
includeJobDetails | boolean | No | true | Fetch complete job descriptions and contact info |
startUrls | string[] | No | [] | Direct job URLs to scrape (bypasses search) |
Output Schema
Each job listing includes:
{"id": "8f68a1bd-de9e-3e00-8c17-657654868a92","title": "Software Developer (m/w/d)","company": "Example GmbH","location": "1010 Wien","canton": "W","country": "AT","salary_min": 3000,"salary_max": 4500,"salary_currency": "EUR","salary_period": "monthly","salary_text": "EUR 3.000,00 brutto pro Monat","employment_type": "full-time","description_snippet": "We are looking for...","description_full": "Full job description...","requirements": ["Bachelor degree", "3+ years experience"],"posted_at": "2026-01-15T00:00:00.000Z","source_url": "https://jobs.ams.at/public/emps/jobs/uuid/8f68a1bd-de9e-3e00-8c17-657654868a92","source_platform": "ams.at","contact_email": "jobs@example.at","contact_phone": "+43 1 234 5678","search_query": "Software Developer","scraped_at": "2026-03-18T10:30:00.000Z","detail_status": "ok"}
detail_status is "ok" when the detail page was read, "failed" when details were requested but the page failed or was empty, and null when not requested. Jobs whose detail page could not be loaded are billed as search results.
Usage Examples
Example 1: Multi-Query Search
{"searchQueries": ["Software Engineer", "DevOps", "Data Scientist"],"location": "Wien","maxResultsPerQuery": 50,"maxResults": 0}
Example 2: Part-time Jobs in Salzburg
{"searchQueries": ["Teilzeit"],"location": "Salzburg","employmentType": "Teilzeit","maxResultsPerQuery": 20}
Example 3: Check Specific Job URLs
{"startUrls": ["https://jobs.ams.at/public/emps/jobs/uuid/8f68a1bd-de9e-3e00-8c17-657654868a92"]}
Performance
- Speed: ~100-200 jobs per minute
- Memory: 128 MB (no browser)
- Proxy: Managed for you, nothing to configure
Support
For issues or questions:
- GitHub: santamaria-apify-scrapers
- Email: support@santamaria.com
Use with AI Agents (MCP)
Connect this actor to any MCP-compatible AI client — Claude Desktop, Claude.ai, Cursor, VS Code, LangChain, LlamaIndex, or custom agents.
Apify MCP server URL:
https://mcp.apify.com?tools=santamaria-automations/ams-at-scraper
Example prompt once connected:
"Use
ams-at-scraperto scrape job listings from ams at. Return results as a table."
Clients that support dynamic tool discovery (Claude.ai, VS Code) will receive the full input schema automatically via add-actor.
Deutsch
Ueberblick
Dieser Apify-Actor sammelt Stellenanzeigen vom Arbeitsmarktservice Oesterreich (AMS.at). Er ruft Stellenangebote von der offiziellen AMS JobRoom-Plattform unter jobs.ams.at ab.
Nur HTTP -- kein Browser erforderlich. Nutzt die AMS Such- und Detail-APIs direkt mit HMAC-SHA512-Authentifizierung. Laeuft mit 128MB, ~100x leichter als browserbasierte Scraper.
Funktionen
- Nur HTTP: Kein Browser noetig -- nutzt AMS Such- und Detail-APIs direkt
- Automatische HMAC-Key-Extraktion: Extrahiert Authentifizierungs-Key aus dem JS-Bundle, falls der gespeicherte Key veraltet ist
- Multi-Query-Suche: Mehrere Suchbegriffe in einem Durchlauf mit query-uebergreifender Deduplizierung
- Direkt-URL-Modus: Ueberpruefung des Status bestimmter Stellenanzeigen per URL
- Vollstaendige Jobdetails: Optional detailliertes Scraping inkl. Kontaktinformationen ueber API
- Pro-Query-Limits: Kontrolle, wie viele Ergebnisse jedes Stichwort liefert
- Integrierte Proxy-Verwaltung: Proxys werden fuer Sie verwaltet, keine Einrichtung noetig
- Deduplizierung: Automatische Entfernung doppelter Stellenanzeigen
Eingabeparameter
{"searchQueries": ["Softwareentwickler", "Kellner", "Mechaniker"],"location": "Wien","maxResultsPerQuery": 100,"maxResults": 0,"includeJobDetails": true}
Verwendungsbeispiele
Beispiel 1: Multi-Query-Suche
{"searchQueries": ["Softwareentwickler", "DevOps", "Data Scientist"],"location": "Wien","maxResultsPerQuery": 50,"maxResults": 0}
Beispiel 2: Teilzeitjobs in Salzburg
{"searchQueries": ["Teilzeit"],"location": "Salzburg","employmentType": "Teilzeit","maxResultsPerQuery": 20}
Related Actors
Working across the Austrian job market? These complement AMS.at:
Austria
- Karriere.at Scraper — an Austrian private domestic job board (peer generalist marketplace).
- StepStone.at Scraper — an Austrian international-brand job portal (peer generalist marketplace).
- Westjob.at Scraper — Austrian western regions (Vorarlberg/Tirol/Salzburg) specialist board.
Germany
Global
Enrich your job data
- Website Job Extractor -- Extract jobs directly from company career pages
- Website Contact Extractor -- Get emails and phone numbers from company websites
- Website Email & Phone Scraper -- Fast email and phone extraction (no AI needed)
License
MIT License - Copyright (c) 2024 Santamaria
Version History
- 3.0.0 (2026-04-15): Go/TLS rewrite
- Rewritten from Node.js to Go with TLS fingerprinting
- Docker image ~12MB (down from ~100MB)
- Memory: 128MB default
- Same HMAC-SHA512 authentication + automatic key extraction
- 3-tier proxy fallback (requested -> auto datacenter -> direct)
- Same input/output schema, fully backward compatible
- 2.0.0 (2026-03-18): HTTP-only rewrite
- Replaced Playwright browser with pure HTTP API calls (got-scraping)
- HMAC-SHA512 authentication for all API endpoints
- Docker image: actor-node (~100MB) instead of playwright-chrome (~2GB)
- Memory: 128MB instead of 512MB
- Added safeCharge() for pay-per-result pricing
- 1.2.0 (2026-03-17): Multi-query upgrade
- 1.1.0 (2026-01-22): Added job details API fetching
- 1.0.0 (2024-12-22): Initial release