ge.ch Emploi Scraper: Geneva Canton Public Sector Jobs

The NanoScrape Ge Ch Emploi Scraper is an Apify actor that extracts job listings from Ge Ch Emploi. It returns 58 fields per result including title, location, city, description, company_name, priced at $5/1k job enrichment, with no API key or monthly subscription required.

Scrape Geneva canton public-sector jobs from ge.ch. Returns title, department, service, salary class, workload, CDI/CDD, publication date, deadline, apply link, reference number and full description (text, HTML, Markdown). No login, no proxy.

Open on Apify →
Pricing
$5.00 / 1,000 job detail enrichment
Runtime
Cloud (Apify)
Proxy
None
Coverage
CH

What you can scrape — 58 fields per result

FieldTypeExampleGroupFill %
_typestringjobCore100%
idstring2278Core100%
reference_idstring | null115535Core33%
titlestring2 Gestionnaires spécialisées ou Gestionnaires spécialisés 80% - 100%Core100%
job_urlstringhttps://www.ge.ch/offres-emploi-etat-geneve/liste-offres/2278Core100%
source_urlstringhttps://www.ge.ch/offres-emploi-etat-geneve/liste-offres/2278Core100%
source_platformstringge.chCore100%
company_namestring | nullDépartement des institutions et du numériqueCore87%
department_urlstring | nullhttps://www.ge.ch/organisation/departement-institutions-du-numerique-dinCore87%
salary_scale_urlstring | nullhttps://www.ge.ch/document/echelle-salariale-01012024-toujours-valable-2026Core100%
apply_urlstring | nullhttps://ge.ch/sirhrecrutement/recrutement/candidatAction.do?NOREFPOSTE=115535Core33%
contact_namestring | null(populated when data available)Core—
contact_titlestring | null(populated when data available)Core—
contact_urlsarray[]Core—
locationstring | nullRoute de Chancy 88 1213 OnexLocation33%
countrystringCHLocation100%
citystring | nullOnexLocation20%
descriptionstring | nullL'office cantonal de la population et des migrations (OCPM) a pour tâche principale la ...Description33%
description_snippetstring | nullL'office cantonal de la population et des migrations (OCPM) a pour tâche principale la ...Description33%
description_fullstring | nullVotre mission L'office cantonal de la population et des migrations (OCPM) a pour tâche ...Description33%
description_htmlstring | null<h2>Votre mission</h2> <p>L'office cantonal de la population et des migrations (OCP...Description33%
description_mdstring | null## Votre mission L'office cantonal de la population et des migrations (OCPM) a pour tâc...Description33%
salary_classstring | nullclasse 10Salary100%
salary_class_numberinteger | null10Salary87%
employment_typestring | nullfull-timeEmployment100%
remote_optionstring | null(populated when data available)Employment—
contract_typestring | nullCDIEmployment100%
contract_type_notestring | null(populated when data available)Employment—
experience_requirementsstring | nullFormation : Niveau CFC d'employé de commerce de 3 ans complété d'une expérience profess...Requirements33%
job_benefitsstring | nullIntégrer une administration publique dont les valeurs essentielles sont le respect, l'i...Requirements33%
job_start_datestring | null2026-12-01T00:00:00ZReviews / rating33%
start_date_textstring | null01.12.2026Reviews / rating33%
reference_numberstring | null115535Metadata33%
departmentstring | nullDépartement des institutions et du numériqueMetadata87%
posted_atstring | null2026-10-21T00:00:00ZMetadata100%
posted_at_datetimestring | null2026-10-21T00:00:00ZMetadata100%
posted_at_textstring | null21 octobre 2026Metadata100%
scraped_atstring2026-10-22T05:55:00ZMetadata100%
hiring_organizationstring | nullEtat de GenèveOther33%
servicestring | nullService étrangers - Secteur livretsOther100%
workplacestring | nullRoute de Chancy 88 1213 OnexOther33%
cantonstringGEOther100%
updated_atstring | null(populated when data available)Other—
updated_at_textstring | null(populated when data available)Other—
valid_throughstring | null2026-11-04T00:00:00ZOther33%
application_deadlinestring | null2026-11-04T00:00:00ZOther33%
application_deadline_textstring | null04.11.2026Other33%
work_percentage_textstring | null80 à 100%Other100%
work_percentage_mininteger | null80Other100%
work_percentage_maxinteger | null100Other100%
observationsstring | nullUn poste à 80 % et un poste à 100% - MERCI DE PRECISER DANS VOTRE LETTRE DE MOTIVATION,...Other33%
apply_platformstring | nullge.ch-sirhOther33%
apply_instructionsstring | null(populated when data available)Other—
contact_emailstring | null(populated when data available)Other—
contact_phonestring | null(populated when data available)Other—
contact_emailsarray[]Other—
contact_phonesarray[]Other—
search_querystring | null(populated when data available)Other67%

Input example — showcase (full detail)

{
  "searchQueries": [
    "informatique",
    "comptable",
    "enseignant"
  ],
  "maxResults": 30,
  "includeJobDetails": true,
  "sortBy": "newest",
  "maxResultsPerQuery": 10
}

Output example — real dataset item (PII scrubbed)

{
  "_type": "job",
  "id": "2278",
  "reference_id": "115535",
  "reference_number": "115535",
  "title": "2 Gestionnaires spécialisées ou Gestionnaires spécialisés 80% - 100%",
  "job_url": "https://www.ge.ch/offres-emploi-etat-geneve/liste-offres/2278",
  "source_url": "https://www.ge.ch/offres-emploi-etat-geneve/liste-offres/2278",
  "source_platform": "ge.ch",
  "company_name": "Département des institutions et du numérique",
  "hiring_organization": "Etat de Genève",
  "department": "Département des institutions et du numérique",
  "department_url": "https://www.ge.ch/organisation/departement-institutions-du-numerique-din",
  "service": "Service étrangers - Secteur livrets",
  "location": "Route de Chancy 88 1213 Onex",
  "workplace": "Route de Chancy 88 1213 Onex",
  "country": "CH",
  "canton": "GE",
  "city": "Onex",
  "posted_at": "2026-10-21T00:00:00Z",
  "posted_at_datetime": "2026-10-21T00:00:00Z",
  "posted_at_text": "21 octobre 2026",
  "updated_at": null,
  "updated_at_text": null,
  "valid_through": "2026-11-04T00:00:00Z",
  "application_deadline": "2026-11-04T00:00:00Z",
  "application_deadline_text": "04.11.2026",
  "job_start_date": "2026-12-01T00:00:00Z",
  "start_date_text": "01.12.2026",
  "employment_type": "full-time",
  "contract_type": "CDI",
  "contract_type_note": null,
  "remote_option": null,
  "work_percentage_text": "80 à 100%",
  "work_percentage_min": 80,
  "work_percentage_max": 100,
  "salary_class": "classe 10",
  "salary_class_number": 10,
  "salary_scale_url": "https://www.ge.ch/document/echelle-salariale-01012024-toujours-valable-2026",
  "description": "L'office cantonal de la population et des migrations (OCPM) a pour tâche principale la tenue à jour du registre des habitants ainsi que du registre des étrangers qui exercent une activité lucrative sur le territoire du canton sans y résider. Il gère également les demandes de documents d'identité suisses et mène les procédures de naturalisation ordinaire. Il traite en outre les dossiers des personnes relevant de l'asile attribuées au canton de Genève et veille à la bonne exécution des décision...",
  "description_snippet": "L'office cantonal de la population et des migrations (OCPM) a pour tâche principale la tenue à jour du registre des habitants ainsi que du registre des étrangers qui exercent une activité lucrative sur le territoire du canton sans y résider. Il gère également les demandes de documents d'identité…",
  "description_full": "Votre mission\nL'office cantonal de la population et des migrations (OCPM) a pour tâche principale la tenue à jour du registre des habitants ainsi que du registre des étrangers qui exercent une activité lucrative sur le territoire du canton sans y résider. Il gère également les demandes de documents d'identité suisses et mène les procédures de naturalisation ordinaire. Il traite en outre les dossiers des personnes relevant de l'asile attribuées au canton de Genève et veille à la bonne exécution des décisions de renvoi prononcées par les autorités compétentes.\nAu sein du secteur livrets du service étrangers, vous participerez à la gestion des demandes des usagers en vue de l'obtention des autorisations de séjour ou de travail dans le respect du cadre légal. Dans ce contexte, vous devrez effectuer un examen des demandes en lien avec la matière pour la délivrance des autorisations. Vous devrez enregistrer les informations relatives à la délivrance des prestations dans les différentes bases de données cantonale et fédérale. Vous serez à charge de la vérification des taxes et de la facturation des prestations.\nVous devrez également assurer le suivi des dossiers en cours ainsi que toute correspondance y relative et serez, en outre, amené-e à renseigner par téléphone, courriel ou courrier les usagers au sujet des procédures en vigueur.\nVotre profil\nFormation :\nNiveau CFC d'employé de commerce de 3 ans complété d'une expérience professionnelle utile au poste.\nCompétences informatiques :\nAptitude à la saisie informatique. Maîtrise des outils informatiques et bureautiques standards.\nConnaissances spécifiques :\nLa connaissance des bases de données cantonale (Calvin) et fédérale (Symic) serait un atout.\nCompétences particulières caractérisant le poste :\nMéthode et précision, sens du service public, esprit cl'analyse et de synthèse. Capacité à travailler de manière autonome. Habileté à gérer son temps de manière méthodique et sens du détail. Facilité de contact et esprit de collaboration.\nVos avantages\nIntégrer une administration publique dont les valeurs essentielles sont le respect, l'intégrité, l'impartialité et la disponibilité ; où l'égalité entre hommes et femmes est garantie.\nProfiter de prestations sociales de qualité, développer des compétences grâce à une offre en formations continues importante et variée.\nObservations\nUn poste à 80 % et un poste à 100% - MERCI DE PRECISER DANS VOTRE LETTRE DE MOTIVATION, LE TAUX Désiré.\nLes offres étant traitées électroniquement, nous vous remercions d'adresser votre dossier complet (lettre de motivation. CV. diplômes, et certificats de travail) en utilisant lien internet en bas du présent message.\nSeules les candidatures complètes et transmises par ce biais seront prises considération.\nUn extrait du casier judiciaire et du registre des poursuites et faillites seront systématiquement demandés à la fin du processus de recrutement.",
  "description_html": "<h2>Votre mission</h2>\n<p>L&#39;office cantonal de la population et des migrations (OCPM) a pour tâche principale la tenue à jour du registre des habitants ainsi que du registre des étrangers qui exercent une activité lucrative sur le territoire du canton sans y résider. Il gère également les demandes de documents d&#39;identité suisses et mène les procédures de naturalisation ordinaire. Il traite en outre les dossiers des personnes relevant de l&#39;asile attribuées au canton de Genève et veille à la bonne exécution des décisions de renvoi prononcées par les autorités compétentes.</p><p>Au sein du secteur livrets du service étrangers, vous participerez à la gestion des demandes des usagers en vue de l&#39;obtention des autorisations de séjour ou de travail dans le respect du cadre légal. Dans ce contexte, vous devrez effectuer un examen des demandes en lien avec la matière pour la délivrance des autorisations. Vous devrez enregistrer les informations relatives à la délivrance des prestations dans les différentes bases de données cantonale et fédérale. Vous serez à charge de la vérification des taxes et de la facturation des prestations. </p><p>Vous devrez également assurer le suivi des dossiers en cours ainsi que toute correspondance y relative et serez, en outre, amené-e à renseigner par téléphone, courriel ou courrier les usagers au sujet des procédures en vigueur.</p>\n<h2>Votre profil</h2>\n<p><strong>Formation</strong> :</p><p>Niveau CFC d&#39;employé de commerce de 3 ans complété d&#39;une expérience professionnelle utile au poste.</p><p><strong>Compétences informatiques</strong> :</p><p>Aptitude à la saisie informatique. Maîtrise des outils informatiques et bureautiques standards. </p><p><strong>Connaissances spécifiques</strong> :</p><p>La connaissance des bases de données cantonale (Calvin) et fédérale (Symic) serait un atout.</p><p><strong>Compétences particulières caractérisant le poste</strong> :</p><p>Méthode et précision, sens du service public, esprit cl&#39;analyse et de synthèse. Capacité à travailler de manière autonome. Habileté à gérer son temps de manière méthodique et sens du détail. Facilité de contact et esprit de collaboration.<br/></p>\n<h2>Vos avantages</h2>\n<p>Intégrer une administration publique dont les valeurs essentielles sont le respect, l&#39;intégrité, l&#39;impartialité et la disponibilité ; où l&#39;égalité entre hommes et femmes est garantie.</p><p>Profiter de prestations sociales de qualité, développer des compétences grâce à une offre en formations continues importante et variée.<br/></p>\n<h2>Observations</h2>\n<p><strong>Un poste à 80 % et un poste à 100% - MERCI DE PRECISER DANS VOTRE LETTRE DE MOTIVATION, LE TAUX  </strong><strong>Désiré.</strong></p><p><strong></strong></p><p>Les offres étant traitées électroniquement, nous vous remercions d&#39;adresser votre dossier complet (lettre de motivation. CV. diplômes, et certificats de travail) en utilisant lien internet en bas du présent message.</p><p>Seules les candidatures complètes et transmises par ce biais seront prises considération.</p><p>Un extrait du casier judiciaire et du registre des poursuites et faillites seront systématiquement demandés à la fin du processus de recrutement.<br/></p>",
  "description_md": "## Votre mission\nL'office cantonal de la population et des migrations (OCPM) a pour tâche principale la tenue à jour du registre des habitants ainsi que du registre des étrangers qui exercent une activité lucrative sur le territoire du canton sans y résider. Il gère également les demandes de documents d'identité suisses et mène les procédures de naturalisation ordinaire. Il traite en outre les dossiers des personnes relevant de l'asile attribuées au canton de Genève et veille à la bonne exécution des décisions de renvoi prononcées par les autorités compétentes.\nAu sein du secteur livrets du service étrangers, vous participerez à la gestion des demandes des usagers en vue de l'obtention des autorisations de séjour ou de travail dans le respect du cadre légal. Dans ce contexte, vous devrez effectuer un examen des demandes en lien avec la matière pour la délivrance des autorisations. Vous devrez enregistrer les informations relatives à la délivrance des prestations dans les différentes bases de données cantonale et fédérale. Vous serez à charge de la vérification des taxes et de la facturation des prestations.\nVous devrez également assurer le suivi des dossiers en cours ainsi que toute correspondance y relative et serez, en outre, amené-e à renseigner par téléphone, courriel ou courrier les usagers au sujet des procédures en vigueur.\n## Votre profil\n**Formation** :\nNiveau CFC d'employé de commerce de 3 ans complété d'une expérience professionnelle utile au poste.\n**Compétences informatiques** :\nAptitude à la saisie informatique. Maîtrise des outils informatiques et bureautiques standards.\n**Connaissances spécifiques** :\nLa connaissance des bases de données cantonale (Calvin) et fédérale (Symic) serait un atout.\n**Compétences particulières caractérisant le poste** :\nMéthode et précision, sens du service public, esprit cl'analyse et de synthèse. Capacité à travailler de manière autonome. Habileté à gérer son temps de manière méthodique et sens du détail. Facilité de contact et esprit de collaboration.\n## Vos avantages\nIntégrer une administration publique dont les valeurs essentielles sont le respect, l'intégrité, l'impartialité et la disponibilité ; où l'égalité entre hommes et femmes est garantie.\nProfiter de prestations sociales de qualité, développer des compétences grâce à une offre en formations continues importante et variée.\n## Observations\n**Un poste à 80 % et un poste à 100% - MERCI DE PRECISER DANS VOTRE LETTRE DE MOTIVATION, LE TAUX****Désiré.**\n****\nLes offres étant traitées électroniquement, nous vous remercions d'adresser votre dossier complet (lettre de motivation. CV. diplômes, et certificats de travail) en utilisant lien internet en bas du présent message.\nSeules les candidatures complètes et transmises par ce biais seront prises considération.\nUn extrait du casier judiciaire et du registre des poursuites et faillites seront systématiquement demandés à la fin du processus de recrutement.",
  "experience_requirements": "Formation :\nNiveau CFC d'employé de commerce de 3 ans complété d'une expérience professionnelle utile au poste.\nCompétences informatiques :\nAptitude à la saisie informatique. Maîtrise des outils informatiques et bureautiques standards.\nConnaissances spécifiques :\nLa connaissance des bases de données cantonale (Calvin) et fédérale (Symic) serait un atout.\nCompétences particulières caractérisant le poste :\nMéthode et précision, sens du service public, esprit cl'analyse et de synthèse. Capacité à travailler de manière autonome. Habileté à gérer son temps de manière méthodique et sens du détail. Facilité de contact et esprit de collaboration.",
  "job_benefits": "Intégrer une administration publique dont les valeurs essentielles sont le respect, l'intégrité, l'impartialité et la disponibilité ; où l'égalité entre hommes et femmes est garantie.\nProfiter de prestations sociales de qualité, développer des compétences grâce à une offre en formations continues importante et variée.",
  "observations": "Un poste à 80 % et un poste à 100% - MERCI DE PRECISER DANS VOTRE LETTRE DE MOTIVATION, LE TAUX Désiré.\nLes offres étant traitées électroniquement, nous vous remercions d'adresser votre dossier complet (lettre de motivation. CV. diplômes, et certificats de travail) en utilisant lien internet en bas du présent message.\nSeules les candidatures complètes et transmises par ce biais seront prises considération.\nUn extrait du casier judiciaire et du registre des poursuites et faillites seront systématiquement demandés à la fin du processus de recrutement.",
  "apply_url": "https://ge.ch/sirhrecrutement/recrutement/candidatAction.do?NOREFPOSTE=115535",
  "apply_platform": "ge.ch-sirh",
  "apply_instructions": null,
  "contact_email": null,
  "contact_phone": null,
  "contact_emails": [],
  "contact_phones": [],
  "contact_urls": [],
  "contact_name": null,
  "contact_title": null,
  "search_query": null,
  "scraped_at": "2026-10-22T05:55:00Z"
}

Cost math

Priced at $0.0050 per job detail enrichment. 10 job detail enrichments ≈ $0.05, 100 ≈ $0.50, 1,000 ≈ $5.00. The first runs land inside Apify's $5/mo free-tier credit — pay only for what you extract, no monthly subscription.

Integrations

Run this actor directly on Apify (no code)

Click Open on Apify above to run ge-ch-emploi-scraper in your browser - no code, no install. In the Apify console you get:

Get your Apify API token

To run this actor from your own code you need an Apify API token. Get one in about a minute:

  1. Sign up for a free Apify account (Google, GitHub, or email).
  2. Go to Settings → Integrations → API tokens.
  3. Click Create a new API token. Copy it and keep it secret.

Free tier: Apify credits your account with $5 of platform usage every month, no credit card required. Enough to test any actor meaningfully. How many results that covers depends on the actor's price per result.

Call from code

Run this actor from any language via the Apify REST API. Replace YOUR_TOKEN with your API token and adapt the input JSON to your needs.

curl -X POST "https://api.apify.com/v2/acts/santamaria-automations~ge-ch-emploi-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{}'
// npm install apify-client
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('santamaria-automations/ge-ch-emploi-scraper').call({});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
# pip install apify-client
from apify_client import ApifyClient

client = ApifyClient('YOUR_TOKEN')
run = client.actor('santamaria-automations/ge-ch-emploi-scraper').call(run_input={})
items = list(client.dataset(run['defaultDatasetId']).iterate_items())
print(items)
// dotnet add package Apify.Client
using Apify.Client;

var client = new ApifyClient("YOUR_TOKEN");
var run = await client.Actor("santamaria-automations/ge-ch-emploi-scraper").CallAsync(new { });
var items = await client.Dataset(run.DefaultDatasetId).ListItemsAsync();
// Maven: com.apify:apify-client
import com.apify.client.ApifyClient;

ApifyClient client = new ApifyClient("YOUR_TOKEN");
ActorRun run = client.actor("santamaria-automations/ge-ch-emploi-scraper").call(Map.of());
List<Map<String,Object>> items = client.dataset(run.getDefaultDatasetId()).listItems();

Use with AI agents (MCP)

This actor is available on the Apify MCP server, so you can drive it from any MCP-compatible AI client - Claude Desktop, Claude.ai, Cursor, VS Code, LangChain, LlamaIndex, or a custom agent - without writing any code.

https://mcp.apify.com?tools=santamaria-automations/ge-ch-emploi-scraper

Example prompt once connected:

"Use <code>ge-ch-emploi-scraper</code> to run a scrape on my target list and give me the results as a table."

Clients that support dynamic tool discovery (Claude.ai, VS Code) receive the full input schema automatically via add-actor.

Use with no-code platforms

Trigger this actor from your favorite automation tool. Every platform below can call the Apify API in a few clicks - no code required.

  1. Add the n8n Apify node (installed by default on n8n Cloud; on self-hosted install @apify/n8n-nodes-apify).
  2. Set Actor to santamaria-automations/ge-ch-emploi-scraper.
  3. Choose operation Run Actor and get dataset, paste your input JSON, and connect a downstream node (Google Sheets, Postgres, webhook, ...).
  1. Create a new Zap with any trigger.
  2. Add a Webhooks by Zapier POST action to https://api.apify.com/v2/acts/santamaria-automations~ge-ch-emploi-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN.
  3. Body: your input JSON. Content-Type: application/json.
  1. Create a new scenario.
  2. Add an HTTP module: URL https://api.apify.com/v2/acts/santamaria-automations~ge-ch-emploi-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN, method POST, body raw JSON.
  3. Parse the response with a JSON module to iterate items downstream.
  1. Create a new workflow.
  2. Add an HTTP Request step: POST to https://api.apify.com/v2/acts/santamaria-automations~ge-ch-emploi-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN.
  3. Access steps.http.$return_value in subsequent steps.
  1. Install the API Connector plugin.
  2. Add a new API: POST https://api.apify.com/v2/acts/santamaria-automations~ge-ch-emploi-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN, body type JSON.
  3. Initialize the call with your input, then reference the response array in workflow actions.

FAQ

How much does the ge-ch-emploi-scraper cost?

$5.00 / 1,000 job detail enrichment, billed per result on Apify. Apify's $5/month free tier covers the first runs. No monthly subscription — you only pay for what you extract.

What fields does it return?

58 fields per result. Full field catalog is listed in the 'What you can scrape' table above — includes core identifiers, descriptive text, dates, and any category-specific data.

Is scraping this site legal?

Scraping publicly available data is generally permitted in most jurisdictions, but GDPR applies to any personal data you collect. Review your local rules and consult a lawyer for commercial use.

How fresh is the data?

Every run pulls live data at execution time. Set up a schedule (daily/hourly/weekly cron) in the Apify console to keep your dataset current automatically.

Related actors in this category

Open on Apify →