
Jobup.ch Scraper
hipersoft/jobup-scraper
Scrape job listings from jobup.ch, French-speaking Switzerland's leading job board. Search by keyword, location and workload; get title, company, location, coordinates, workload, employment type, category, publication date, full description and salary when published. Export JSON/CSV/Excel.
Total users
2Monthly users
1Total runs
29Per job
$0.0015Last rebuilt
Oct 26, 2026Overview
Jobup.ch Scraper extracts job listings from jobup.ch, the leading job board of French-speaking Switzerland (Suisse romande), covering Geneva, Lausanne, Vaud, Fribourg, Neuchâtel, Valais and Jura, plus jobs across all of Switzerland. Every job includes the title, company, company logo, location with postal code and GPS coordinates, workload (taux d'activité, e.g. 80–100%), employment type (CDI, CDD, temporary, internship), category, profession, publication date and, with full details enabled, the complete job description, working hours and salary when published. Search offres d'emploi by keyword, location and workload, and export to CSV, Excel or JSON.
What does Jobup.ch Scraper do?
- 🔍 Search by keyword in French or English: développeur, comptable, infirmier, assistant de direction, marketing manager. Leave empty to collect every published job.
- 📍 Filter by location: Genève, Lausanne, Vaud, Fribourg, Neuchâtel, Sion, or any Swiss city, region or canton.
- 📊 Filter by workload (taux d'activité): e.g. 80–100% for full-time or up to 60% for part-time roles.
- 🌐 English or French links and descriptions.
- 🔗 Paste jobup.ch links: any search-results page or job page straight from your browser.
- 🧾 Rich job fields: title, company, location, coordinates, workload, employment type, category, publication date and logo.
- 💶 Full details (optional): complete description, profession, working hours and salary in CHF when the employer publishes it.
- 📤 Clean, flat output ready for spreadsheets, databases and dashboards.
What data can you scrape from jobup.ch?
| Field | Description |
|---|---|
| Job ID, title | Jobup.ch job identifier and title |
| Company | Company name, ID, logo and website |
| Location | City, postal code, region, latitude, longitude |
| Workload | Minimum and maximum employment grade (%) |
| Employment type | Permanent (CDI), fixed-term (CDD), temporary, internship… |
| Category and profession | Job category and profession |
| Working hours | Hours per week (full details) |
| Salary | Salary range in CHF, if published (full details) |
| Description | Full job description (full details) |
| Publication date | When the job was published |
| Links | Job page and application link |
Use cases for Swiss Romandie job data
- Recruiters and staffing agencies (placement, recrutement): find companies hiring in Geneva, Lausanne and Vaud.
- Salary benchmarking: collect published CHF salary ranges by profession and region.
- Job-market research: track demand for finance, IT, healthcare, watchmaking and hospitality roles in Suisse romande.
- B2B sales prospecting: hiring companies are growing companies and good leads for HR, IT and consulting services.
- Job aggregators and alerts: build a daily feed of new offres d'emploi.
- Cross-border workers (frontaliers): monitor jobs near the French border in Geneva, Vaud, Neuchâtel and Jura.
How to scrape jobup.ch
- Click Try for free to open Jobup.ch Scraper in Apify Console.
- Enter search keywords and optionally a location and workload range.
- Optionally turn on Include full details for descriptions and salaries.
- Set Max items and click Start.
- Download the jobs as CSV, Excel or JSON.
Input
Example input
{
"query": "comptable",
"location": "Genève",
"employmentGradeMin": 80,
"language": "fr",
"includeDetail": true,
"maxItems": 200
}
| Field | Description |
|---|---|
| Search keywords | Keywords to search for. Leave empty to collect all published jobs. |
| Location | Optional Swiss city, region or canton. |
| Minimum / Maximum workload (%) | Optional employment-grade range. |
| Language | English or French links and descriptions. |
| Start URLs | Optional jobup.ch search or job links. Used instead of the fields above. |
| Include full details | Adds description, profession, working hours and salary. Slower, richer output. |
| Max items | Maximum number of jobs (0 = no limit). |
Output
Job example
{
"jobId": "682da5d8-3b87-4ab3-9eff-555ea562dff4",
"title": "Comptable Senior",
"companyName": "Qualibroker – Swiss Risk Care SA",
"companyId": "63781",
"companyLogoUrl": "https://media.jobup.ch/media/ce835c5a-8c37-4503-8ede-729469d76626.jpg?dimensions=320x0",
"companyUrl": "https://www.swissriskcare.ch/",
"location": "Vésenaz",
"postalCode": "1222",
"latitude": 46.240914,
"longitude": 6.199018,
"employmentGradeMin": 100,
"employmentGradeMax": 100,
"employmentType": "Durée indéterminée",
"workHours": "42 - 42 hours/week",
"category": "Finances / Comptabilité / Controlling",
"profession": "Collaborateur Comptabilité",
"publicationDate": "2026-10-02T02:02:46+02:00",
"language": "fr",
"salary": "CHF 65050 - 105050 / year",
"description": "Pour ses bureaux situés à Vésenaz (GE), le groupe Qualibroker Swiss Risk & Care, recherche un(e) Comptable Senior…",
"isActive": true,
"detailUrl": "https://www.jobup.ch/fr/emplois/detail/682da5d8-3b87-4ab3-9eff-555ea562dff4/",
"applyUrl": "https://www.jobup.ch/fr/emplois/detail/682da5d8-3b87-4ab3-9eff-555ea562dff4/"
}
Output schema
| Field | Type | Description |
|---|---|---|
jobId |
string | Jobup.ch job ID. |
title |
string | Job title. |
companyName, companyId, companyLogoUrl, companyUrl |
string | Employer. |
location, postalCode, region |
string | Location. |
latitude, longitude |
number | Coordinates. |
employmentGradeMin, employmentGradeMax |
number | Workload (%). |
employmentType |
string | Contract type. |
workHours |
string | Weekly hours (full details). |
category, profession |
string | Category and profession. |
requiredLanguages |
array | Required languages, when listed. |
publicationDate |
string (ISO date) | Publication date. |
salary |
string | Salary range, if published (full details). |
teaser, description |
string | Short teaser and full description. |
isActive |
boolean | Whether the job is still open. |
detailUrl, applyUrl, url |
string (URL) | Job page and application link. |
How much does it cost to scrape jobup.ch?
Jobup.ch Scraper uses pay-per-job pricing: a small fixed price per job, with automatic discounts on higher Apify plans. See the Pricing tab for the exact price.
More Swiss and European job data
- Jobs.ch Scraper: jobs from jobs.ch, Switzerland's largest job board (German-speaking Switzerland).
- LinkedIn Jobs Scraper: LinkedIn jobs in Switzerland and worldwide.
- Indeed Scraper: jobs from Indeed.
FAQ
Can I search in French? Yes. French and English keywords both work, and job texts are returned exactly as published.
Does it include salaries? Yes, when the employer publishes a salary. Turn on Include full details to get it.
How many jobs can I get? Everything that matches your search. Leave keywords empty and set Max items to 0 to collect all published jobs.
Can I monitor new jobs daily? Yes. Schedule the scraper daily with your keywords and location.
What formats can I export? CSV, Excel, JSON, XML, HTML and RSS, or read the results through the Apify API.
Can I integrate Jobup.ch Scraper with other apps? Jobup.ch Scraper can be connected with almost any cloud service or web app thanks to integrations on the Apify platform. It works with Make, Zapier, Slack, Airbyte, GitHub, Google Drive and many more, plus the Apify API, JS/Python clients and MCP. Or use webhooks to trigger an action whenever a run finishes.
Is it legal to scrape jobup.ch? The scraper only collects publicly listed job offers. You are responsible for using the data in line with jobup.ch's terms and Swiss data-protection law (nFADP).
Notes
Original clean-room implementation. Returns only public data. Not affiliated with jobup.ch or JobCloud.
Input
| Field | Type | Description |
|---|---|---|
querySearch keywords | string | Keywords to search for (e.g. "développeur", "comptable", "infirmier", "marketing manager"). Leave empty to collect all currently published jobs. Ignored when Start URLs are set. |
locationLocation | string | Optional. Limit results to a Swiss city, region or canton (e.g. "Geneva", "Lausanne", "Vaud", "Fribourg", "Neuchâtel"). Leave empty to search all of Switzerland. |
employmentGradeMinMinimum workload (%) | integer | Optional. Only collect jobs whose workload starts at or above this percentage (e.g. 80 for 80–100% roles). |
employmentGradeMaxMaximum workload (%) | integer | Optional. Only collect jobs whose workload is at or below this percentage (e.g. 60 for part-time roles). |
languageLanguage | string · en, fr | Language for the listing detail links and (with "Include full details") the job descriptions. Default: "en" |
startUrlsStart URLs | array | Optional. One or more jobup.ch search-results or job-detail URLs. Paste the URL straight from your browser. When set, these are used instead of the fields above. |
includeDetailInclude full details | boolean | Fetch each job's detail page for extra fields (full description, profession, category, employment type, working hours, salary if published, company page). Slower, but richer output. Default: false |
maxItemsMax items | integer | Maximum number of jobs to collect across all searches (0 = no limit; collect everything the searches return). Default: 100 |
API
curl -X POST "https://api.apify.com/v2/acts/hipersoft~jobup-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"query": "développeur"
}'from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("hipersoft/jobup-scraper").call(run_input={
"query": "développeur"
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('hipersoft/jobup-scraper').call({
"query": "développeur"
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Pricing
| Event | Price | Paid plans from |
|---|---|---|
| Job One jobup.ch job listing scraped | $0.0015 | $0.0008 |
You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.
Related scrapers
Dribbble Shots Scraper
Scrape public design shots from Dribbble: title, high-res image, tags, likes, views and designer credit. Filter by category or sort, export JSON, CSV or Excel.
359 runs · 5 users · $0.003 / shot scrapedComputrabajo Scraper
Scrape Computrabajo job listings across Latin America (Mexico, Colombia, Argentina, Chile, Peru and more): title, company, location, salary, posted date and apply URL. Filter by country and keyword. No setup.
206 runs · 4 users · $0.002 / listing scrapedKraken Market Data Scraper
Fetch Kraken spot market data in bulk: ticker stats (ask, bid, last, 24h high/low/volume/vwap), OHLC candles for any interval, order book depth (top bids/asks), and tradable pair metadata. Fast, clean and cheap.
165 runs · 4 users · $0.001 / pair scrapedBayt Scraper
Scrape Bayt.com job listings across the Middle East (UAE, Saudi Arabia, Egypt, Qatar and more): title, company, location, posted date and apply URL. Filter by country and keyword.
134 runs · 4 users · $0.003 / job scrapedGitHub Scraper
Search GitHub and scrape repositories (stars, forks, language, topics, license, dates) or user profiles (name, company, location, bio, followers, public email, repos). Uses the GitHub REST API; optional token for higher rate limits. For developer lead generation, OSS research and recruiting.
131 runs · 7 users · $0.0008 / item scrapedHacker News Scraper
Scrape Hacker News stories, comments, Ask HN, Show HN, jobs and polls by keyword, points, comments and date range. Sort by relevance or newest. Title, URL, author, points, comment count, text and HN link. Fast clean HTTP via the HN Algolia API, no setup.
130 runs · 2 users · $0.004 / item scrapedSend the site and the fields. We build it and you get it first.