jobnet-search

SKILL.md

Jobnet-Search Skill

Access live Danish job listings from the Jobnet.dk public API. No authentication needed. Jobnet is operated by STAR (Styrelsen for Arbejdsmarked og Rekruttering) and is Denmark's official government job portal — covering public sector positions as well as many private sector listings. Approximately 21,000+ active jobs at any time.

When to use this skill

Invoke this skill when the user wants to:

  • Search for job openings in Denmark by keyword, title, or employer
  • Filter jobs by region, work hours (full/part time), or employment duration (permanent/temporary)
  • Find jobs near a specific postal code within a given radius
  • Get full details for a specific job ad including description, contact persons, and application URL
  • Discover occupation types and ESCO categories for more precise job filtering
  • Explore autocomplete suggestions for Danish job titles or keywords
  • Find jobs in the public sector, healthcare, IT, education, or any other Danish industry

Commands

Search for job ads

bun run skills/jobnet-search/cli/src/cli.ts search [flags]

Key flags:

  • --search-string <text> — keyword search, e.g. sygeplejerske, ingeniør, pædagog
  • --region <region>HovedstadenOgBornholm, Midtjylland, Syddanmark, OevrigeSjaelland, Nordjylland
  • --postal-code <code> — postal code for radius-based search, e.g. 2100
  • --radius <km> — radius in km from postal code (default: 50)
  • --work-hours <type>FullTime or PartTime
  • --duration <type>Permanent or Temporary
  • --job-type <type>Ordinaert, Efterloenner, Foertidspension
  • --occupation-area <id> — occupation area identifier, e.g. 10000
  • --occupation-group <id> — occupation group identifier, e.g. 10060
  • --order <type>PublicationDate (default), BestMatch, ApplicationDate
  • --page / --per-page / --limit
  • --format json|table|plain

Full job ad detail

bun run skills/jobnet-search/cli/src/cli.ts detail <jobAdId> [--format json|plain]

jobAdId is the UUID from search results (the jobAdId field). Returns the complete job description, contact persons, application deadline, employer details, and direct application URL.

Search occupation types

bun run skills/jobnet-search/cli/src/cli.ts occupations --search-string <text> [--per-page <n>]

Use this to discover ESCO occupation identifiers before passing them to search with --occupation-area or --occupation-group.

Typeahead suggestions

bun run skills/jobnet-search/cli/src/cli.ts suggestions --query <text> [--limit <n>]

Returns Danish job title autocomplete strings. Useful for exploring valid Danish job titles before constructing a search query.


How to use effectively

Discover occupations first. Use occupations or suggestions to find the right Danish term or ESCO identifier before running a search:

bun run skills/jobnet-search/cli/src/cli.ts suggestions --query "syge"
bun run skills/jobnet-search/cli/src/cli.ts occupations --search-string "sygeplejerske"

Natural workflow: searchdetail.

  1. Use search to get a list of matching jobs with their jobAdId.
  2. Call detail <jobAdId> to get the full job description, contact persons, and direct application link.

Use --format table for comparisons, --format json for data processing, and --format plain for single-record detail views (strips HTML from job body).

Pagination: --per-page controls server-side results per page. --limit caps what the CLI outputs. Use --page + --per-page to iterate through large result sets.

Geographic search modes:

  • Use --region for broad regional filtering (e.g. all of Midtjylland)
  • Use --postal-code + --radius for jobs near a specific location
  • Do not combine --region and --postal-code in the same query

Order matters for intent:

  • PublicationDate — newest postings first (default, good for "what's new")
  • BestMatch — relevance score (best when --search-string is provided)
  • ApplicationDate — earliest deadline first (good for urgent applications)

Usage examples

Jobs in Copenhagen area

bun run skills/jobnet-search/cli/src/cli.ts search \
  --region HovedstadenOgBornholm \
  --per-page 10 \
  --format table

Nurse jobs nationwide

bun run skills/jobnet-search/cli/src/cli.ts search \
  --search-string "sygeplejerske" \
  --work-hours FullTime \
  --duration Permanent \
  --order BestMatch \
  --per-page 10 \
  --format table

IT jobs near Aarhus within 30km

bun run skills/jobnet-search/cli/src/cli.ts search \
  --search-string "udvikler" \
  --postal-code 8000 \
  --radius 30 \
  --work-hours FullTime \
  --format table

Full details of a job ad

bun run skills/jobnet-search/cli/src/cli.ts detail 9ef43bce-d82b-4ea1-a098-7ff6520f99be --format plain

Jobs sorted by application deadline (urgent first)

bun run skills/jobnet-search/cli/src/cli.ts search \
  --search-string "pædagog" \
  --region OevrigeSjaelland \
  --order ApplicationDate \
  --per-page 10

Discover occupation terms

bun run skills/jobnet-search/cli/src/cli.ts suggestions --query "ingeniør" --limit 5
bun run skills/jobnet-search/cli/src/cli.ts occupations --search-string "lærer" --per-page 5

Output formats

Format Best for
json Default — programmatic use, data processing, passing IDs between commands
table Quick human-readable overviews and comparisons
plain Single-record detail views (detail), strips HTML from job descriptions

All errors are written to stderr as { "error": "...", "code": "..." } and the process exits with code 1.


Notes

  • All data is from the public jobnet.dk/bff REST API — no credentials required.
  • The API requires the x-csrf: 1 header; the CLI adds this automatically.
  • Pagination is 1-indexed (--page 1 is the first page).
  • search results omit the HTML job description — use detail to get it.
  • detail --format plain strips HTML tags for readable text output.
  • Job ad detail pages on jobnet.dk: https://jobnet.dk/job/{jobAdId}
  • suggestions is tuned for Danish job titles — English terms may return empty results.
Weekly Installs
4
GitHub Stars
19
First Seen
2 days ago
Installed on
opencode4
gemini-cli4
github-copilot4
codex4
kimi-cli4
cursor4