
Jobs.ch Scraper
hipersoft/jobs-ch-scraper
Scrape public job listings from jobs.ch, Switzerland's #1 job board. Search by keyword, location and workload, and export one clean row per job: title, company, location, employment grade, employment type, category, publication date and listing URL as JSON, CSV or Excel.
Total users
2Monthly users
1Total runs
59Per job scraped
$0.003Last rebuilt
Oct 26, 2026Overview
Scrape public job listings from jobs.ch, Switzerland's #1 job board, and export clean, structured data. Search by keyword, narrow down by location (city, region or canton) and workload (full-time or part-time) — or paste a ready-made jobs.ch search or job URL — and get one tidy row per job: title, company, location, employment grade, employment type, category, publication date and the listing link. Download everything as JSON, CSV or Excel, or pull it straight from the API.
Great for job-market research, salary benchmarking, recruiting and sourcing, building a job feed, or tracking new openings across Switzerland.
What it does
- 🔍 Search by keyword — find jobs by role, skill or title (e.g.
developer,pflegefachfrau,marketing manager). Leave it empty to collect every published job. - 📍 Filter by location — limit results to a Swiss city, region or canton (e.g.
Zurich,Geneva,Vaud,Basel). - 📊 Filter by workload — set a minimum and/or maximum employment grade (e.g. 80–100% for full-time, or up to 60% for part-time).
- 🌐 English, German or French — pick the language for listing links and descriptions.
- 🔗 Paste Start URLs — drop in any jobs.ch search or job URL straight from your browser.
- 🧾 Rich job fields — title, company, location, employment grade, employment type, category, publication date, coordinates and company logo.
- 🔎 Optional full details — enable Include full details for the full description, profession, category, working hours and salary (when published).
- 📤 Clean, flat output — ready for spreadsheets, databases and dashboards.
Input
| Field | Description |
|---|---|
| Search keywords | Keywords to search for. Leave empty to collect all published jobs. |
| Location | Optional Swiss city, region or canton to limit the search. |
| Minimum / Maximum workload (%) | Optional employment-grade range (e.g. 80–100% for full-time). |
| Language | Language for listing links and descriptions: English, German or French. |
| Start URLs | Optional list of jobs.ch search or job URLs. When set, these are used instead of the fields above. |
| Include full details | Fetch each job's detail page for extra fields. Slower, richer output. |
| Max items | Maximum number of jobs to collect (0 = no limit). |
Example input
{
"query": "developer",
"location": "Zurich",
"employmentGradeMin": 80,
"language": "en",
"maxItems": 100
}
Output
Each job is one record. Example (fields vary by listing):
{
"jobId": "9dc16c98-81b7-4827-84e0-fb203b7347d4",
"title": "Full Stack Developer (m/w/d)",
"companyName": "Bucher Municipal AG",
"companyId": "fb4a49d2-e5ca-4912-bc54-35bb26813681",
"companyLogoUrl": "https://media.jobs.ch/media/1c079445-7926-4bf7-a6bd-4b7b042861e7",
"location": "Niederweningen",
"latitude": 47.50437,
"longitude": 8.37668,
"employmentGradeMin": 100,
"employmentGradeMax": 100,
"employmentType": "Permanent position",
"category": "Technical / IT / Telecom / Software / Engineering",
"profession": "Software Engineer",
"requiredLanguages": ["de"],
"publicationDate": "2026-09-03T18:33:14+02:00",
"language": "en",
"salary": null,
"teaser": "Full Stack Developer (m/w/d) — Referenznummer 79728 …",
"detailUrl": "https://www.jobs.ch/en/vacancies/detail/9dc16c98-81b7-4827-84e0-fb203b7347d4/",
"applyUrl": "https://www.jobs.ch/en/vacancies/detail/9dc16c98-81b7-4827-84e0-fb203b7347d4/"
}
Use cases
- Recruiting & sourcing — build a live feed of relevant openings and companies that are hiring.
- Salary & market research — benchmark roles, workloads and hiring demand across cantons.
- Competitive intelligence — track which companies are posting, and how often.
- Job aggregators & dashboards — power your own board or analytics with clean, structured data.
FAQ
Do I need an account or credentials? No. Just set your search and run.
Can I scrape a specific search from my browser? Yes — paste one or more jobs.ch search or job URLs into Start URLs.
Which languages are supported? English, German and French. Choose one with the Language option.
How do I get the full job description? Enable Include full details to add the full description, profession, category, working hours and salary (when published).
This tool collects only public job listings. It does not access private, candidate or account data.
Input
| Field | Type | Description |
|---|---|---|
querySearch keywords | string | Keywords to search for (e.g. "developer", "pflegefachfrau", "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. "Zurich", "Geneva", "Vaud", "Basel"). 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, de, fr | Language for the listing detail links and (with "Include full details") the job descriptions. Default: "en" |
startUrlsStart URLs | array | Optional. One or more jobs.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~jobs-ch-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"query": "developer"
}'from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("hipersoft/jobs-ch-scraper").call(run_input={
"query": "developer"
})
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/jobs-ch-scraper').call({
"query": "developer"
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Pricing
| Event | Price | Paid plans from |
|---|---|---|
| Job scraped Charged for each job listing successfully scraped and returned to your dataset. | $0.003 | $0.0015 |
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.