Arbetsförmedlingen Jobs Scraper – Swedish Public Job Ads avatar

Arbetsförmedlingen Jobs Scraper – Swedish Public Job Ads

Pricing

from $1.50 / 1,000 result items

Go to Apify Store
Arbetsförmedlingen Jobs Scraper – Swedish Public Job Ads

Arbetsförmedlingen Jobs Scraper – Swedish Public Job Ads

Extract Swedish public job ads from the official Arbetsförmedlingen JobTech API by keyword, municipality, region, occupation and employment type: employer, workplace, occupation, hours, salary type, posting and closing date. No contact details. JSON, CSV or Excel.

Pricing

from $1.50 / 1,000 result items

Rating

0.0

(0)

Developer

Yusuke Suda

Yusuke Suda

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Arbetsförmedlingen Jobs Scraper — Swedish public job ads

Extract Swedish public job ads from the official Arbetsförmedlingen JobTech API by keyword, municipality, region, occupation and employment type: employer, workplace, occupation, hours, salary type, posting and closing date. No contact details.

Three rows from a real run

TitleEmployerWorkplaceOccupationPublished
Rekondchef till ledande aktör inom fordonsbranschenAura Personal ABSträngnäs, Södermanlands länBilrekonditionerare2026-10-21
Kundmottagare sökes till däcksäsong i StockholmAura Personal ABStockholm, Stockholms länKundmottagare/Arbetsledare bilverkstad2026-10-21
Kundmottagare sökes i StockholmAura Personal ABStockholm, Stockholms länKundmottagare/Arbetsledare bilverkstad2026-10-21

The default run (no filter, maxItems: 100) on 21 October 2026 returned 100 ads in 11 seconds and costs $0.15 at $1.50 per 1,000 results. The API held 42,204 ads that day.

Arbetsförmedlingen, the Swedish Public Employment Service, publishes the ads of Platsbanken through its open JobTech JobSearch API. This Actor asks that API, not the website: no page is scraped and no key is needed. Places, occupations and employment types can be given by name; the Actor looks them up in the JobTech taxonomy.

Press Start. The defaults return the first 100 ads the API serves for all of Sweden (newest first when no keyword is given).

What a row looks like

{
"id": "31623537",
"title": "Rekondchef till ledande aktör inom fordonsbranschen",
"employer_name": "Aura Personal AB",
"employer_website": "https://www.aurapersonal.se",
"workplace_city": "Strängnäs",
"workplace_municipality": "Strängnäs",
"workplace_region": "Södermanlands län",
"workplace_country": "Sverige",
"occupation": "Bilrekonditionerare",
"occupation_group": "Bilrekonditionerare, fönsterputsare m.fl.",
"occupation_field": "Sanering och renhållning",
"employment_type": "Vanlig anställning",
"working_hours": "Heltid",
"duration": "Tills vidare",
"salary_type": "Fast månads- vecko- eller timlön",
"salary_description": "",
"number_of_vacancies": 1,
"published_at": "2026-10-21",
"application_deadline": "2026-11-20",
"remote": null,
"url": "https://arbetsformedlingen.se/platsbanken/annonser/31623537",
"source_url": "https://arbetsformedlingen.se/platsbanken/annonser/31623537"
}

No contact details are kept: the API returns each ad's contact persons, e-mail addresses and phone numbers, the ad text and the workplace street address, and the Actor drops them before anything is stored. The employer's name goes through the catalogue's person-name rule: where it is a person's own name (a sole trader), it is left empty and employer_name_withheld is true (0 of 100 in the example run).

Every row also carries employer_name_withheld, source_site and scraped_at.

FieldWhat it holdsHow often it is filled (example run, 100 rows)
id, titleThe ad's id at Arbetsförmedlingen; its headlineAlways
employer_nameEmployer (organisation); empty where it is a person's own nameAlways
employer_websiteEmployer's website where the ad gives oneAlways
workplace_city, workplace_municipality, workplace_region, workplace_countryWhere the job isAlways
occupation, occupation_group, occupation_fieldOccupation, its SSYK group and field (JobTech taxonomy)Always
employment_typee.g. Vanlig anställning, Vikariat, BehovsanställningAlways
working_hoursHeltid / Deltid94 of 100
durationHow long the job lasts94 of 100
salary_typeHow pay is set (fixed, commission, …)Always
salary_descriptionPay as the employer describes it0 of 100
number_of_vacanciesPlaces to fillAlways
published_at, application_deadlineDay published; closing dayAlways
remotetrue when the ad marks remote work (or remote was asked for)0 of 100
url, source_urlThe ad on Platsbanken (both the same page)Always

Input

FieldWhat it does
keywordFree text, searched in the headline, the ad text and the employer name, e.g. sjuksköterska, lärare, developer.
municipalityA municipality by name or code, e.g. Stockholm, Göteborg, 0180.
regionA region (län) by name or code, e.g. Stockholm (Stockholms län), Skåne, 01.
countryA country by Swedish name or ISO code, e.g. Norge, NO (ads for work abroad).
occupationField, occupationGroupAs the JobTech taxonomy names them, e.g. Data/IT, Grundskollärare.
employmentTypee.g. Vanlig anställning, Vikariat, Behovsanställning.
publishedAfterOnly ads published on or after this day.
remoteOnly ads the API marks as likely to allow remote work (it matches phrases in the ad).
maxItemsStop after this many ads (2,000 at most).

A name the taxonomy does not know returns no rows and says so in the run's status.

How it works

The Actor sends one search to the API and reads its results 100 at a time, waiting a second between pages; a "too many requests" answer is retried after a pause. The API serves the first 2,100 ads of any search, so a run returns 2,000 at most: narrow a broad search by place, occupation or date to reach the rest.

Pricing

$1.50 per 1,000 results (event result-item), no start fee. Set a maximum charge per run in the run options to cap it.

Good to know

  • The data is what the API serves on the day of the run.
  • Questions or a missing field: open an issue on this Actor.