Jobup.ch Scraper avatar

Jobup.ch Scraper

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Jobup.ch Scraper

Jobup.ch Scraper

Extract structured Swiss job listings from Jobup.ch — Switzerland's leading French-language job board. 100,000+ listings with CHF salary ranges, employment type, workload %, full descriptions in HTML, text and Markdown. Repost detection & daysOld filters included. No API key required.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

3

Total users

1

Monthly active users

10 hours ago

Last modified

Share

Jobup.ch Scraper

Extract structured job listings from jobup.ch, Switzerland's leading French and Italian-speaking job board powered by JobCloud. Search by keyword and location across 100,000+ active listings. No API key required.


Why use this scraper?

  • Complete Swiss job market coverage — jobup.ch is the dominant platform for French- and Italian-speaking Switzerland, covering Geneva, Lausanne, Bern, Zurich, Lugano and beyond
  • Salary data included — extract CHF salary ranges (min/max, annual/monthly) directly from listings where employers provide them
  • Rich structured output — job title, company, location, workload percentage, contract type, full description in HTML, plain text and Markdown
  • Repost detection — cross-run deduplication with 90-day memory identifies reposts so you only process genuinely new listings
  • Multilingual — search in English or French
  • Date filtering — filter by posting date (last 1, 3, 7 or 30 days)

What data is extracted?

Each job listing returns the following fields:

FieldDescription
idUnique UUID from jobup.ch
urlDirect URL to the job posting
titleJob title
companyEmployer name
companyIdJobup company ID (if available)
companyLogoLogo image URL
placeCity or location of the role
publishDatePublication date (YYYY-MM-DD)
publishDateISOPublication date in ISO 8601 format
initialPublishDateOriginal publication date (before reposts)
salaryMinMinimum salary value
salaryMaxMaximum salary value
salaryCurrencySalary currency (typically CHF)
salaryPeriodPay period (YEAR, MONTH, WEEK, HOUR)
workloadWorkload percentage (e.g. 80–100%, 100%)
contractTypeContract type (Permanent position, Temporary, Freelance, Internship, etc.)
positionSeniority level (Employee, Position with responsibilities, Executive position)
isNewWhether the listing was posted today
isSponsoredWhether the listing is a sponsored/paid placement
descriptionFull job description (HTML)
descriptionTextFull job description (plain text)
descriptionMarkdownFull job description (Markdown)
applyUrlApplication URL
validThroughApplication deadline (ISO 8601, if provided)
isRepostWhether this job was seen in a previous run
originalPublishDateFirst date the job was seen (dedup)
contentHashMD5 fingerprint of URL + publish date
sourceAlways jobup.ch
scrapedAtTimestamp of scrape
summaryShort human-readable summary for alerts

Input parameters

ParameterTypeDefaultDescription
searchQueryString""Keywords to search (e.g. "developer", "comptable")
locationString""City or region (e.g. "Geneva", "Lausanne", "Zurich")
languageSelect"en"Search language: en (English) or fr (Français)
maxResultsInteger100Maximum number of results to return
daysOldIntegerFilter to jobs posted within N days (1/3/7/30)
fetchDetailsBooleantrueFetch full description from detail page (disable for list-only data)
skipRepostsBooleanfalseSkip listings already seen in previous runs
startUrlsArray[]Custom jobup.ch search URLs to scrape instead of building from query

Example input

{
"searchQuery": "software engineer",
"location": "Geneva",
"language": "en",
"maxResults": 200,
"daysOld": 7,
"fetchDetails": true,
"skipReposts": false
}

Using a custom search URL

{
"startUrls": [
{ "url": "https://www.jobup.ch/en/jobs/?term=comptable&location=lausanne&publicationDate=7" }
],
"maxResults": 100
}

Pricing

This actor uses Pay-Per-Event (PPE) pricing — you only pay for what you use.

EventCost
Per 1,000 job listings$1.50
Actor start$0.00005

Flat-rate comparison: scraping 10,000 jobs costs approximately $15.00 — far less than enterprise data providers charging $500–$2,000/month for Swiss job market data.


Performance

ConfigurationSpeedCost per 1,000 jobs
fetchDetails: false (list only)~500 jobs/min~$0.75
fetchDetails: true (full description)~80 jobs/min~$1.50
With daysOld filterFaster (fewer pages)Proportional

Known limitations

  • Date filter granularity — jobup.ch only supports discrete date filters (1, 3, 7 or 30 days). Values in between are rounded up to the next supported tier.
  • Salary availability — many employers choose not to display salary information; these listings will return null for salary fields.
  • Application URL — some jobs redirect to a third-party ATS. The applyUrl reflects the target URL from the JSON-LD structured data.
  • validThrough — application deadlines are only present when employers explicitly set them.

Technical details

  • Memory: 256 MB
  • Deduplication store: jobup-ch-job-dedup (90-day TTL, stored in Apify Key-Value Store)
  • Timezone: All dates normalised to Europe/Zurich
  • Supported languages: English (en), French (fr)
  • Pagination: 20 results per page; actor handles all pages automatically

Additional services

Need a custom scraper, scheduled data delivery, webhook integration, or a tailored Swiss job market feed? Contact unfenced-group via the Apify platform — we build bespoke data solutions for HR tech teams, recruitment platforms and market intelligence providers.


unfenced-group — Swiss job market data infrastructure