Jobs.ch Scraper
Pricing
from $1.20 / 1,000 results
Jobs.ch Scraper
Scrape job listings from Jobs.ch — Switzerland's leading German-language job board. Structured output with CHF salary ranges, employment type, workload percentage, company details & full descriptions in HTML, text and Markdown. Repost detection. No API key required.
Pricing
from $1.20 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Maintained by CommunityActor stats
1
Bookmarked
27
Total users
10
Monthly active users
0.68 hours
Issues response
3 days ago
Last modified
Categories
Share
Jobs.ch Scraper — Switzerland Jobs

Extract structured job listings from jobs.ch — Switzerland's leading job board covering German, French, and Italian-speaking regions. Filter by keyword, location, language, contract type, and workload. No API key required.
What you get
Each result includes the job title, company, location, contract type, workload percentage, publication date, and a direct link.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
keywords | array | — | Keywords to search for, e.g. ["Software Engineer"] |
locations | array | — | Location filters, e.g. ["Zürich", "Basel", "Genf"] |
language | string | — | Listing language: de, fr, it, or en |
contractTypeFilter | string | — | Contract filter, e.g. PERMANENT, TEMPORARY, INTERNSHIP |
workloadMin | integer | — | Minimum workload percentage, e.g. 80 |
workloadMax | integer | — | Maximum workload percentage, e.g. 100 |
maxItems | integer | 100 | Maximum number of listings to return |
fetchDetails | boolean | false | Fetch full job description from each listing page |
daysOld | integer | — | Only return jobs posted within this many days |
skipReposts | boolean | false | Skip listings already seen in previous runs |
Output fields
| Field | Type | Notes |
|---|---|---|
id | string | Jobs.ch internal listing ID |
title | string | Job title |
company | string | Hiring company name |
location | string | Location as displayed |
contractType | string | e.g. PERMANENT, TEMPORARY |
workload | string | Workload as displayed, e.g. 80–100% |
publishDate | string | Date posted |
isRepost | boolean | true if seen in a previous run |
url | string | Direct link to the listing |
Examples
Software engineers in Zürich
{"keywords": ["Software Engineer"],"locations": ["Zürich"],"maxItems": 50}
French-language roles in Geneva
{"keywords": ["développeur"],"locations": ["Genf"],"language": "fr","maxItems": 100}
Part-time roles — 60–80% workload
{"keywords": ["Buchhalter"],"workloadMin": 60,"workloadMax": 80,"maxItems": 50}
Daily incremental feed
{"keywords": ["Data Engineer"],"daysOld": 1,"skipReposts": true,"maxItems": 500}
Pricing
Pay-per-result — charged only for items pushed to the dataset.
Notes
Jobs.ch serves all three of Switzerland's main language regions. Use the language filter (de, fr, it) to target a specific region. Workload is expressed as a percentage — most Swiss listings show a range such as 80–100%.
Related scrapers
Other scrapers in our Jobs — Germany, Austria & Switzerland collection:
Häufig gestellte Fragen
Wie finde ich passende Stellen auf jobs.ch mit diesem Actor?
Du gibst Suchbegriffe und Ort an, und der Actor liefert alle passenden Stelleninserate — Titel, Firma, Ort, Pensum und den Link — als ein Dataset.
Kann ich nach Region oder Branche filtern?
Ja. Ort und Stichwörter gehen in die Eingabe, der Actor liefert nur passende Inserate. Mehrere Suchen laufen in einem Durchgang zusammen.
Hole ich alle Inserate oder nur die erste Seite?
Der Actor blättert durch alle Treffer deiner Suche, du bekommst also den vollständigen Satz in einem Lauf.
Wie halte ich die Daten aktuell?
Plane einen täglichen oder wöchentlichen Lauf. Jeder Lauf ist mit Zeitstempel versehen, sodass neue Inserate leicht zu isolieren sind.
Per Zeitplan ausführen
Dieser Actor ist für die wiederholte Nutzung gebaut. Stell ihn so ein, dass er täglich, wöchentlich oder stündlich läuft, und die Daten kommen weiter herein, ohne dass du etwas tun musst.
- Läufe planen — öffne den Actor, geh zu Schedules und wähle einen Rhythmus. Jeder Lauf berechnet nur die Ergebnisse, die er liefert.
- Mit deinem Stack verbinden — schick Ergebnisse direkt an Google Sheets, Slack, einen Webhook oder deine Datenbank über Apify Integrations. Kein zusätzlicher Code nötig.
- Ergebnisse per API abrufen — jeder Lauf schreibt ein sauberes Dataset, das du mit einem API-Call abrufst, bereit für alles, was du darauf aufbaust.
Einmal einstellen, und es läuft von allein.
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