NAV Norway Scraper — Job Listings from arbeidsplassen.nav.no avatar

NAV Norway Scraper — Job Listings from arbeidsplassen.nav.no

Pricing

from $1.20 / 1,000 result scrapeds

Go to Apify Store
NAV Norway Scraper — Job Listings from arbeidsplassen.nav.no

NAV Norway Scraper — Job Listings from arbeidsplassen.nav.no

Scrape job listings, employers, locations, and posting dates from NAV Arbeidsplassen, Norway's public employment service job board. Public API access, no login.

Pricing

from $1.20 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 hours ago

Last modified

Categories

Share

NAV Norway Scraper

Extract job listings from arbeidsplassen.nav.no, the job board run by NAV — Norway's public employment service (Arbeids- og velferdsetaten) and the country's largest single source of open positions.

This Actor pulls job titles, employers, locations, posting dates, employment types, and descriptions directly from NAV's official pam-stilling-feed open-data API. No login, no cookies, no browser automation, no anti-bot workaround needed — it reads structured JSON straight from the source.

What does NAV Norway Scraper do?

Give it a Norwegian keyword (for example sykepleier, selger, or lærer) and, optionally, a municipality or county. The Actor pages through NAV's public job-ad feed, filters for active postings matching your query, fetches full ad detail for each match, and returns clean, structured records you can download as JSON, CSV, Excel, or HTML — or pull through the Apify API into your own systems.

Because it runs on the Apify platform, you also get scheduling, monitoring, and integrations (webhooks, Make, Zapier, Google Sheets) out of the box.

Why use NAV Norway Scraper?

  • Largest job pool in Norway. NAV aggregates vacancies directly registered by employers plus postings imported from third-party ATS systems nationwide.
  • Labour-market research. Track hiring demand by occupation, municipality, or sector over time.
  • Recruitment and sourcing. Build lead lists of Norwegian companies actively hiring for a role.
  • Job aggregators. Feed a niche job site or newsletter with fresh, structured Norwegian listings.
  • No anti-bot headaches. NAV's feed API is public and open, so runs are fast and reliable.
  • Fills the Nordic PES gap. Companion to our Arbetsförmedlingen (Sweden) scraper — together they cover the two largest Nordic public employment services.

How to scrape NAV data

  1. Open the Actor and go to the Input tab.
  2. Enter a Search Query in Norwegian (e.g., sykepleier, elektriker, renholder).
  3. Optionally set a Location — a Norwegian municipality or county name (e.g., OSLO, BERGEN, AKERSHUS).
  4. Set Max Results to control how many listings you want (capped at 500 per run).
  5. Click Start. When the run finishes, open the Output tab and download your data as JSON, CSV, Excel, or HTML.

That's it. You can also schedule the Actor to run daily and be notified of new listings.

How the data is sourced

Unlike a typical keyword-search API, arbeidsplassen.nav.no's official open-data API (pam-stilling-feed, documented at navikt.github.io/pam-stilling-feed) is a paginated change feed of ad events, not a ?q=keyword search endpoint. This Actor:

  1. Fetches a fresh public access token from NAV's token endpoint (rotates periodically — the Actor always grabs a current one, never a hardcoded value).
  2. Jumps into the feed near the present using NAV's If-Modified-Since header, then pages forward through feed events (1000 per page — the API's fixed page size, not configurable).
  3. Filters for status: ACTIVE ads whose title matches your search query.
  4. Fetches full detail (employer, work locations, description, employment type) for each match, applies the location filter if set, and pushes results until maxResults is reached.

This means result volume for very narrow search terms combined with a tight location filter can be lower than on a true search API — the Actor pages up to 25 feed pages (~25,000 events, comfortably covering the last week+ of NAV activity) before giving up and returning whatever it found.

Input

FieldTypeDescription
searchQuerystringNorwegian keyword to match against job titles. Defaults to sykepleier.
locationstringNorwegian municipality or county name. Leave empty to search all of Norway.
maxResultsintegerMaximum number of job listings to return (default 100, hard cap 500).
proxyConfigurationobjectProxy settings. Apify datacenter proxies work well since this is a public API.

Example input

{
"searchQuery": "sykepleier",
"location": "OSLO",
"maxResults": 50,
"proxyConfiguration": {
"useApifyProxy": true
}
}

Output

Each job is returned as one dataset record. You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

Example output item

{
"id": "5682dc63-a73b-459b-ad5e-0039e171faa5",
"title": "Sykepleier",
"company": "Byåsen hjemmetjeneste, Trondheim kommune",
"locationRaw": "TRONDHEIM",
"locationParsed": {
"city": "TRONDHEIM",
"country": "NO"
},
"language": "no",
"postedAt": "2026-07-29T00:00:00+02:00",
"descriptionSnippet": "Vil du være med på å skape trygghet og livskvalitet for hjemmeboende i Byåsen? Byåsen hjemmetjeneste har ledig en fast 100 prosent stilling som sykepleier med oppstart etter avtale...",
"url": "https://arbeidsplassen.nav.no/stillinger/stilling/5682dc63-a73b-459b-ad5e-0039e171faa5",
"employmentType": "Fast, Heltid",
"salaryRaw": null,
"source": "arbeidsplassen.nav.no",
"scrapedAt": "2026-08-04T17:27:46.060Z"
}

Data fields

FieldDescription
idNAV job ad UUID — stable identifier, used for de-duplication
titleJob posting title
companyHiring employer name
locationRawWork location(s) as NAV lists them (municipality/county), comma-separated
locationParsed.city / .countryParsed city and country code (always "NO")
languageDetected posting language (ISO 639-1) — usually no, occasionally en
postedAtISO 8601 publish date, or null if missing
descriptionSnippetPlain-text excerpt of the job description (300–400 chars, HTML stripped)
urlAbsolute URL to the posting on arbeidsplassen.nav.no
employmentTypeEngagement type + extent as NAV expresses it (e.g. "Fast, Heltid" = permanent, full-time)
salaryRawAlways null — NAV's feed schema has no salary field
sourceAlways "arbeidsplassen.nav.no"
scrapedAtISO 8601 collection timestamp

How much does it cost to scrape NAV?

The Actor reads a lightweight JSON API, so runs are cheap and fast. Cost estimate: roughly one API call per result (fetched in small concurrent batches to keep runs fast) — a typical run of 100 listings finishes in a couple of minutes and uses a small amount of compute. Pricing follows this Actor's pay-per-result configuration on the Apify Store — check the pricing box on the Actor page for the current rate.

Note: usage cost only settles once a run reports status SUCCEEDED. If you read the dataset mid-run or check cost before the run finishes, the number you see will undercount — always check final cost after the run has completed, not before.

Tips and advanced options

  • Norwegian keywords. The board is Norwegian. Use Norwegian job titles (sykepleier, selger, lærer, sjåfør, renholder, butikk) for the best coverage. English terms will mostly miss, since the vast majority of postings are written in Norwegian.
  • Location names. Use Norwegian municipality or county names in uppercase-style spelling as NAV itself uses (e.g., BERGEN, TRØNDELAG). Matching is case-insensitive and substring-based, so "oslo" also works.
  • Broaden if you get fewer results than expected. Because this is a feed API rather than a true search index, very narrow query + location combinations can return fewer matches than maxResults within the Actor's page budget — try a broader keyword or drop the location filter.
  • Deduplication. Results are de-duplicated by ad UUID within a run.

Limitations

  • This Actor searches recent feed activity (roughly the last one to two weeks of postings, depending on how quickly the feed's event volume advances), not NAV's full historical archive back to 2019.
  • No salary data — NAV's own schema doesn't carry it.
  • Search is a client-side title match against a change feed, not a full-text search index — see "How the data is sourced" above.

FAQ, disclaimers, and support

Is scraping NAV legal? This Actor reads NAV's own official open-data API, published for third-party consumption under NAV's terms of use. Use the data responsibly and in line with applicable terms and data-protection law. You are responsible for how you use the extracted data.

Do I need an account or API key? No. The Actor fetches a fresh public access token automatically at the start of every run. No registration, login, or cookies are required.

Why do I sometimes get fewer results than maxResults? See "Tips and advanced options" above — this is a feed-based search, not a keyword index, so very narrow filters can run out of matches within the Actor's page budget.

Something's not working. Open an issue on the Actor's Issues tab with your input and the run link. Custom fields or a tailored version can also be arranged.

Looking for job data from other European public employment services? Check out our companion Actors: