Jobnet.dk Scraper
Pricing
from $1.99 / 1,000 results
Jobnet.dk Scraper
Scrape job listings from Jobnet.dk — Denmark's official government job portal with 20,000+ active listings. Supports keyword search, regional filters, employment type, and full job detail enrichment.
Pricing
from $1.99 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Maintained by CommunityActor stats
1
Bookmarked
3
Total users
2
Monthly active users
16 hours ago
Last modified
Categories
Share

Extract job listings from jobnet.dk at scale, in a clean, consistent structure ready for analysis, job boards, recruiting tools and market research. No API key required.
Why this scraper?
🎯 Built for Denmark
A dedicated Danish scraper, not a global tool with a country dropdown. Search, locations and currency (DKK) are tuned for jobnet.dk.
📄 Complete job data
Full job title and description, direct listing URL and publish date for every record.
💶 Salary data
Salary information parsed from the listing where the employer publishes it, in DKK. Missing salaries are returned as null, never guessed.
📍 Precise location
City, region and country plus latitude/longitude for mapping and radius analysis.
🔁 Repost & change detection
Every record carries isRepost and changeStatus, so daily feeds return genuinely new jobs instead of reposted duplicates.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
searchString | string | (empty) | Search or filter by searchString. |
maxResults | integer | 100 | Maximum number of results (0 = no limit). |
orderType | string | (empty) | orderType. |
regions | array | (empty) | Filter by regions. |
countries | string | (empty) | countries. |
employmentDurationType | string | (empty) | employmentDurationType. |
workHoursType | string | (empty) | workHoursType. |
workplaceFilter | string | (empty) | workplaceFilter. |
jobAnnouncementType | string | (empty) | jobAnnouncementType. |
postalCode | string | (empty) | postalCode. |
kmRadius | string | (empty) | kmRadius. |
occupationAreas | string | (empty) | occupationAreas. |
occupationGroups | string | (empty) | occupationGroups. |
occupations | string | (empty) | occupations. |
fetchDetails | boolean | false | ON: fetches full job description, salary, company info, and all details. OFF: returns basic listing info only (faster, lower cost). |
skipReposts | boolean | false | Enable skipReposts. |
searchQuery | string | "developer" | Keywords or job title to search for. |
Output schema
Every field below is present on every record. Fields the source does not publish for a given job are returned as null rather than omitted.
| Field | Type | Description |
|---|---|---|
jobAdId | string | Job ad id. |
url | string | Direct link to the listing |
title | string | Job title |
description | string | Full job description in plain text. |
descriptionHtml | string | Full job description in HTML. |
descriptionMarkdown | string | Full description converted to Markdown. |
publicationDate | string | Publication date. |
applicationDeadline | string | Application deadline. |
applicationDeadlineStatus | string | Application deadline status. |
employerName | string | Employer name. |
cvr | string | Cvr. |
occupation | string | Occupation. |
isPartTime | boolean | Is part time. |
country | string | Country of the position. |
municipality | string | Municipality. |
postalCode | number | — |
postalDistrictName | string | Postal district name. |
isExternal | boolean | Is external. |
salaryMin | string | Minimum salary (null if not published by the employer). |
salaryMax | string | Maximum salary (null if not published by the employer). |
salaryCurrency | string | Currency code of the salary. |
salaryPeriod | string | Pay period the salary refers to (e.g. year, month, hour). |
applicationUrl | string | Application url. |
availablePositions | number | Available positions. |
isApplicationDeadlineASAP | boolean | Is application deadline asap. |
jobType | string | Job type. |
isLimitedPeriod | boolean | Is limited period. |
isDisabilityFriendly | boolean | Is disability friendly. |
shifts | array | Shifts. |
driversLicenses | array | Drivers licenses. |
noFixedWorkplace | boolean | No fixed workplace. |
streetAddress | string | Street address. |
city | string | City of the position. |
countryCode | string | Country code. |
pNumber | string | P number. |
employerCity | string | Employer city. |
employerPostalCode | string | Employer postal code. |
createdDateTime | string | Created date time. |
updatedDateTime | string | Updated date time. |
changeStatus | string | NEW, CHANGED or UNCHANGED compared to the previous time this job was seen. |
contentHash | string | Stable hash of the listing content, used for repost and change detection. |
latitude | string | Latitude of the workplace. |
longitude | string | Longitude of the workplace. |
Example record
{"jobAdId": "922a7017-e263-4cb9-8999-99120e89fa43","url": "https://jobnet.dk/job/922a7017-e263-4cb9-8999-99120e89fa43","title": "Direktør til Danish e-Infrastructure Consortium, DeiC","description": "DeiC søger en direktør til en toårig overgangsperiode, hvor den fælles nationale organisation for digital forskningsinfrastruktur for de danske universiteter skal bringes sikkert i stilling som en pro …","descriptionHtml": "DeiC søger en direktør til en toårig overgangsperiode, hvor den fælles nationale organisation for digital forskningsinfrastruktur for de danske universiteter skal bringes sikkert i stilling som en pro …","descriptionMarkdown": "DeiC søger en direktør til en toårig overgangsperiode, hvor den fælles nationale organisation for digital forskningsinfrastruktur for de danske universiteter skal bringes sikkert i stilling som en pro …","publicationDate": "2026-07-02T14:52:00+02:00","applicationDeadline": "2026-08-26T23:59:59+02:00","applicationDeadlineStatus": "ExpirationDate","employerName": "DTU Afdelingen for Økonomi og Regnskab","cvr": "30060946","occupation": "Direktør","isPartTime": false,"country": "Danmark","municipality": null,"postalCode": 2800,"postalDistrictName": "Kongens Lyngby","isExternal": false,"salaryMin": null,"salaryMax": null,"salaryCurrency": null,"salaryPeriod": null,"applicationUrl": "https://efzu.fa.em2.oraclecloud.com/hcmUI/CandidateExperience/da/sites/CX_2001/job/7668/apply/email","availablePositions": 1,"isApplicationDeadlineASAP": false,"jobType": "Ordinaert","isLimitedPeriod": true,"isDisabilityFriendly": false,"shifts": [],"driversLicenses": [],"noFixedWorkplace": false,"streetAddress": "Anker Engelunds Vej 101","city": "Kgs. Lyngby","countryCode": "DK","pNumber": "1003403265","employerCity": "Kgs. Lyngby","employerPostalCode": "2800","createdDateTime": "2026-07-02T15:35:06.640884+02:00","updatedDateTime": "2026-07-02T15:35:06.640884+02:00","changeStatus": "NEW","contentHash": "10626674aadf6210","latitude": null,"longitude": null}
Examples
Search for pædagog roles in Aarhus:
{"searchQuery": "pædagog","maxResults": 100}
Broad nationwide crawl:
{"searchQuery": "pædagog","maxResults": 1000}
Larger run with a hard cap:
{"searchQuery": "pædagog","maxResults": 500}
Daily feed (run on a schedule):
{"searchQuery": "pædagog","skipReposts": true,"maxResults": 500}
Schedule this input in the Apify Scheduler (for example daily at 07:00) to keep an always-fresh feed of the newest listings.
💰 Pricing
$2.49 per 1,000 results — you only pay for successfully retrieved listings. Failed retries are never charged.
| Results | Cost |
|---|---|
| 100 | ~$0.25 |
| 1,000 | ~$2.49 |
| 10,000 | ~$24.90 |
| 100,000 | ~$249.00 |
Flat-rate alternatives typically charge $29–$49/month regardless of usage.
Subscription tiers lower the rate further, down to $1.49 per 1,000 at the highest tier. Use the Max results cap in the input to control your spend exactly.
Performance
| Run size | Typical time |
|---|---|
| 100 results | under 1 minute |
| 1,000 results | 2–4 minutes |
| 10,000 results | 20–35 minutes |
Known limitations
- Salary is only returned when the employer publishes it — many listings carry
nullsalary fields. - Company details vary per listing; the scraper returns what the source publishes and never invents data.
- Very large result sets are bounded by the source's own paging limits.
- Listings can be removed by the source at any time, so a small share of URLs may expire shortly after scraping.
Technical details
- Source: jobnet.dk — Denmark job listings
- Coverage: everything the public search exposes, filterable via the input parameters above
- Retry: automatic retry on network errors with exponential backoff
Need a custom scraper?
Unfenced Group builds Apify actors for any website — for free.
If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.
Get in touch: www.unfencedgroup.nl