JobMittelland.ch Scraper - Mittelland Region Job Board avatar

JobMittelland.ch Scraper - Mittelland Region Job Board

Pricing

$2.70 / 1,000 job listings

Go to Apify Store
JobMittelland.ch Scraper - Mittelland Region Job Board

JobMittelland.ch Scraper - Mittelland Region Job Board

Collect public JobMittelland.ch jobs by keyword or job URL. Get titles, employers, locations, workload, and full job text, plus pay and contact details when listed. Use the data for hiring research and job lists.

Pricing

$2.70 / 1,000 job listings

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a month ago

Last modified

Share

🔎 Collect JobMittelland.ch jobs for hiring research

Recruiters and job-market researchers can use this JobMittelland.ch scraper to turn public listings into data for job lists and hiring research. Search by keyword or submit job URLs to get titles, employers, locations, workload, and full job text. Pay, dates, application links, and public contacts are included when the source lists them.

📦 Job and employer data you get

Each saved row is one unique JobMittelland.ch job listing. It includes the job ID, title, URL, and employer name. Other fields depend on what the source makes public.

You can get the full job description, workload range, employment terms, remote-work details, and location. Available employer details include a website, description, address, logo, social links, and benefits. Listed pay, dates, application links, and contacts help you review each role.

The first eligible match is saved as it is found. Later matches for the same job are ignored. A saved row is not changed to collect later matches.

  1. Choose Keyword search and enter a job title or search term.
  2. Add location, workload, or employer filters if needed. All keywords share these filters.
  3. Keep Maximum jobs small for your first run.
  4. Run the Actor, then open Job listings to view the dataset.

For known jobs, choose Job URLs and paste their JobMittelland.ch listing URLs. Search filters and Maximum jobs do not apply to this mode.

⚙️ Input

Input fields

FieldTypeWhat it does
discoveryMethodstringRequired. Use keywords for keyword search or urls for known job URLs.
keywordsarray of stringsJob titles or search terms. All keywords use the same filters.
locationsarray of stringsSwiss cantons, districts, or cities for keyword search. Leave empty for all locations.
minWorkloadintegerLowest workload percentage for keyword search, from 0 to 100.
maxWorkloadintegerHighest workload percentage for keyword search, from 0 to 100. Must be at least the minimum.
employerTypestringall, direct, or agency for keyword search. Defaults to all.
sortBystringnewest or source relevance order for keyword search. Defaults to newest.
jobUrlsarray of URL entriesJobMittelland.ch listing URLs for URL mode. Add each URL as an object with a url field. Search filters do not apply.
maxItemsintegerStops keyword search after this many jobs. Minimum 1, with no fixed upper bound. Leave empty to return all available matches until the source is exhausted. Does not limit submitted job URLs.

Example input

This input comes from a successful default-input run:

{
"discoveryMethod": "keywords",
"keywords": [
"Softwareentwickler"
],
"employerType": "all",
"sortBy": "newest",
"maxItems": 1
}

🧾 Output

Open the jobs output link to view the default dataset. Both input modes return the same job shape. id, title, url, and employer.name are required. Other fields may be absent when the source does not provide them.

Job listing fields

FieldTypeWhat it does
idstringSource job ID. Use it to match the same job across runs.
titlestringJob title as listed by the source.
urlstringSource job listing URL.
employerobjectEmployer name and available profile details.
employer.namestringEmployer name.
employer.websiteUrlstringLinked employer website.
employer.descriptionstringPublic employer description.
employer.addressstringPublic employer address.
employer.logoUrlstringEmployer logo URL.
employer.socialProfilesarray of stringsSocial profile URLs listed by the source.
employer.benefitsarray of stringsListed employer benefits.
locationobjectListed job location.
location.citystringCity where the job is based.
location.districtstringDistrict where the job is based.
location.cantonstringSwiss canton.
location.postalCodestringListed postal code.
location.countrystringListed country.
workloadobjectAdvertised workload range in percent.
workload.minnumberLowest advertised workload percentage.
workload.maxnumberHighest advertised workload percentage.
employmentTermsarray of stringsListed terms, such as contract type or duration.
remoteWorkstringListed remote-work arrangement.
descriptionstringComplete public job description as text.
applicationUrlstringApplication destination linked by the source.
publishedAtstringSource publication date or time.
expiresAtstringSource expiration date or time.
compensationobjectListed pay amounts, currency, and pay period.
compensation.minnumberLowest advertised pay amount.
compensation.maxnumberHighest advertised pay amount.
compensation.currencystringCurrency stated for pay.
compensation.periodstringStated pay period, such as hour or year.
contactsarray of objectsPublic job application and contact details.
contacts[].namestringListed contact name.
contacts[].rolestringListed contact role.
contacts[].emailstringPublic contact email.
contacts[].phonestringPublic contact phone number.

Example job listing

This complete row comes from a successful run of the current beta build:

{
"id": "367426",
"title": "Web-Developer:in Fokus Support – 80–100%",
"url": "https://www.jobmittelland.ch/job/vacancy/367426",
"employer": {
"name": "Previon Plus AG",
"websiteUrl": "https://previon.ch/",
"description": "Wir können vieles.\n\nZusammen können wir alles.\n\nGegründet 2013 in Aarau hat sich Previon von einer mutigen Idee zu einer schweizweit gefragten KI- und Digitalagentur entwickelt, die digitale und KI-Lösungen für die Unternehmensziele von morgen schafft. Unser Anspruch: Menschen in den Mittelpunkt zu stellen und Technologie so einzusetzen, dass sie begeistert, verbindet – und wirkt.\n\nErfahre hier mehr über unsere Story.",
"address": "Aeschbachweg 12 5000 Aarau Schweiz",
"logoUrl": "https://barberry.jobmittelland.ch/0d32e3f1fa808b97a1d6_176x88bgFFFFFFcanvas176x88trimFFFx5.jpeg"
},
"location": {
"city": "Aarau",
"postalCode": "5000",
"canton": "Aargau",
"country": "ch"
},
"workload": {
"min": 80,
"max": 100
},
"employmentTerms": [
"Festanstellung"
],
"remoteWork": "Homeoffice",
"description": "Deine Mission bei Previon\n\nKommunikation als Kernaufgabe : Du bist für unsere Kund:innen die erste Anlaufstelle, im Ticket, per Mail oder auch mal per Telefon. Du hörst zu, fragst nach, erklärst Technisches verständlich und gibst auch dann eine ehrliche Rückmeldung, wenn es länger dauert oder etwas schiefgelaufen ist.\n\nSupport-Tickets: Du nimmst Anfragen unserer Kund:innen entgegen, klärst nach, ordnest ein und bearbeitest sie, von der Konfigurations-Anpassung bis zum echten Bug oder einer kleinen Erweiterung.\n\nSupport-Desk im Griff : Du überwachst den Support-Desk selbständig, behältst Prioritäten und Fristen im Blick, koordinierst dich mit dem Team und sorgst dafür, dass nichts liegen bleibt.\n\nErste Schritte in der Entwicklung : Du setzt kleinere Anpassungen und Bugfixes selbst auf Basis von Drupal, Laravel und JavaScript um. Je nach Wissen auch im Frontend mit HTML und CSS.\n\nKI im Entwicklungsalltag : Du arbeitest von Beginn weg mit KI-gestützten Tools wie Claude Code und lernst, wo sie dich schneller machen und wo du selber hinschauen musst.\n\nLernen im Team : Code Reviews, Pair Programming und erfahrene Kolleg:innen, die dir zeigen, warum eine Lösung nicht nur funktioniert, sondern auch in Jahren noch trägt.\n\nDeine Entwicklung : Je nach Eignung und Interesse entwickelst du dich weiter; Richtung Backend, Frontend, Requirements und Projektarbeit. Den Weg bestimmst du mit.\n\nBei Previon bekommst du eine saubere Einarbeitung, Kolleg:innen, die deine Fragen ernst nehmen, und ein Team, das nicht nur gut zusammenarbeitet, sondern auch gut zusammen lacht.\n\nDas bringst du mit\n\nDu bist ausgesprochen kommunikativ. Du gehst offen auf Menschen zu, schreibst verständlich und behältst auch dann einen freundlichen Ton, wenn dein Gegenüber gestresst oder verärgert ist.\n\nAbgeschlossene Ausbildung als Informatiker:in EFZ Fachrichtung Applikationsentwicklung. Ob du direkt ab Lehre kommst oder bereits zwei bis drei Jahre Berufserfahrung mitbringst, spielt für uns keine Rolle, wir richten die Aufgaben nach deinem Stand aus.\n\nGrundlegende Kenntnisse in Webtechnologien sind notwendig: PHP, HTML, CSS und JavaScript solltest du nicht zum ersten Mal sehen.\n\nDu organisierst dich gut, arbeitest zuverlässig und bleibst an einem Thema dran, bis es erledigt ist.\n\nDu arbeitest strukturiert und fragst nach, statt zu raten.\n\nNeugier auf KI-gestützte Entwicklungstools und Lust, damit deine eigene Arbeitsweise zu schärfen.\n\nDeutsch stilsicher in Wort und Schrift, Englisch für technische Dokumentation und den Austausch mit deinen Kolleg:innen.\n\nTogether With Us\n\nWir sind ein ambitioniertes Team mit vielfältigen Hintergründen und einer gemeinsamen Leidenschaft: das grosse Ganze denken und trotzdem über die kleinen Details diskutieren.\n\nBei uns findest du:\n\nFlexibilität : Hybrides Arbeiten und flexible Arbeitszeiten.\n\nWeiterentwicklung : Gezielte Schulungen und Trainings, damit deine Skills nicht auf dem Stand von gestern bleiben.\n\nTeamkultur : Gemeinsame Kaffee- und Bierpausen, anspruchsvolle Projekte und Teamevents, über die noch Monate später gesprochen wird.\n\nLeidenschaft fürs Leben : Wir sind Mütter, Väter, Ehepartner:innen, Hobbyköch:innen, Sportler:innen und Geniesser:innen – und wissen, dass gute Arbeit ein gutes Leben daneben braucht.\n\nWir sind überzeugt: Mit Leidenschaft und dem richtigen Team lässt sich viel bewegen und unsere Arbeit macht für unsere Kund:innen einen echten Unterschied.\n\nPrevion Plus AG\n\nAeschbachweg 12\n\n5000 Aarau\n\nClaudio Scicchitano\n\nCOO\n\n+41 58 680 28 28\n\ncscicchitano@previon.ch",
"publishedAt": "2026-09-15 14:18:31.796459+0200",
"expiresAt": "2026-10-15",
"contacts": [
{
"name": "Claudio Scicchitano",
"role": "COO",
"email": "cscicchitano@previon.ch",
"phone": "+41 58 680 28 28"
}
]
}

💳 Pricing

This Actor uses pay-per-event pricing. Each unique public job listing saved to the dataset creates one Job listing charge. Runs with no saved jobs do not create this charge. Check the current price shown on the Actor page before running.

Use maxItems to limit jobs from keyword search. For URL mode, the number of submitted job URLs bounds the work.

🔌 Integrations

Export the dataset as JSON or CSV for your own tools. You can run the Actor through the Apify API, set an Apify schedule, or use an Apify webhook after a run. For repeated research, compare job IDs across your saved exports.

❓ FAQ

Do filters apply to submitted job URLs?

No. Location, workload, employer, and search-order settings apply only to keyword search. maxItems also applies only to keyword search.

Can each keyword use its own filters?

No. All keywords share the same search settings in a run. Use separate runs for different filters.

Why are pay or contact fields missing?

Those fields are included only when the source makes them public. Missing extra details do not prevent a useful job row from being saved.

Can I leave the job limit empty?

Yes. Leave maxItems empty to return all available matches until the source is exhausted. There is no fixed upper bound in the input schema.

Are duplicate jobs saved again in the same run?

No. The first eligible occurrence is saved. Later matches for the same source job are ignored, and the saved row keeps its first match.

Does the Actor track job changes or apply for jobs?

It returns current public listings. It does not keep a history, label changes, apply for jobs, or contact employers. You can compare saved exports in your own workflow.

Do I need a JobMittelland.ch account?

No. The Actor reads public listings without buyer authentication.

📝 Changelog

v0.0 (04-10-2026)

  • Initial release.

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

Made with ❤️ by Maxime Dupré