IrishJobs.ie Ireland Jobs Scraper avatar

IrishJobs.ie Ireland Jobs Scraper

Pricing

from $1.45 / 1,000 job postings

Go to Apify Store
IrishJobs.ie Ireland Jobs Scraper

IrishJobs.ie Ireland Jobs Scraper

Scrape job postings from IrishJobs.ie — title, employer + logo, structured EUR salary band, work type, dates, full description, and applyUrl. Works with any keyword, county, company, or filtered search URL. Efficient JSON-based pagination, one flat row per job. JSON or CSV out.

Pricing

from $1.45 / 1,000 job postings

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 hours ago

Last modified

Categories

Share

Turn Ireland's leading job board into clean, structured hiring data. Paste any IrishJobs.ie search URL — keyword, county, company, or filtered — and get one flat row per job posting: title, employer with logo, structured EUR salary band, work type, dates, full description, and the apply URL. No browser, no flakiness, no per-request proxy bills.

How it works

How the IrishJobs.ie Scraper works

✨ Why use this scraper?

  • All-Ireland coverage — every sector and county on IrishJobs.ie, Dublin to Donegal, thousands of live postings.
  • Any search URL works — the query string is honoured server-side, so every filter the IrishJobs web search supports (keyword, location, salary, posted date, remote…) works here too. No filter-mapping surprises.
  • Efficient JSON-based pagination — listings are walked through the site's own structured feed (25 jobs per call), not scraped from HTML. Faster, cheaper, far more robust to redesigns.
  • Three data sources merged per row — the listing feed, the JobPosting JSON-LD, and the job-ad app state. You get fields (structured salary, work type, employer jobs count, skills) that plain HTML scrapers miss.
  • Structured EUR salary bandmin / max / currency / period parsed when the employer disclosed one; the honest "€ Not Disclosed" raw text when they didn't. Never fabricated.
  • Built-in residential proxy at no extra cost — traffic is pre-routed; nothing to configure, no proxy add-ons to buy.

🎯 Use cases

WhoWhat they do with it
Recruiters & staffing agenciesMonitor competitor postings, source niches by county, track when roles close (validThrough).
HR & compensation analystsBenchmark Irish salaries by sector using the structured salary band + work type.
Job aggregators & boardsIngest a clean JSON feed of Irish vacancies with stable numeric IDs for dedup.
Market & labour researchersTrack hiring volume by industry, employer, county over time (datePosted, industry, employer.jobsCount).
Lead-gen teamsCompanies that are hiring are companies that are buying — enrich rows with contact emails (opt-in) and qualify by payment stack.

📥 Supported inputs

Input URLExampleWhat happens
Keyword listinghttps://www.irishjobs.ie/jobs/software-engineerPaginates all matches, one row per job
Keyword + locationhttps://www.irishjobs.ie/jobs/accountant/in-corkServer-side location filter honoured
Location / countyhttps://www.irishjobs.ie/jobs/dublinAll jobs for that area
Company jobs pagehttps://www.irishjobs.ie/jobs-at/{company-slug}All live postings for one employer
Filtered searchany listing URL + query string (?salary=…, ?postedWithin=…, …)Filters honoured verbatim, server-side
Job detailhttps://www.irishjobs.ie/job/{slug}/{org}-job{id}Scraped directly — exactly 1 row

Not supported: URLs from other domains (including UK Stepstone sister sites — use the dedicated TotalJobs / Caterer / CWJobs scrapers for those), CV-search or recruiter-side pages, and pages behind a login.

🔄 How it works

  1. Classify every input URL — listing vs job detail.
  2. Walk listings through IrishJobs' structured resultlist feed, 25 jobs per call, ?page=N pagination, until your maxItems cap or the result set ends.
  3. Fetch each job page in parallel (sliding-window concurrency) through the built-in residential proxy, racing three independent HTTP stacks for reliability.
  4. Parse & merge the JobPosting JSON-LD, the job-ad app state (salary text, work type, company card), and the listing item (structured salary, skills, dates) into one flat row.
  5. Push one row per job to the dataset — no padding rows, you pay per real result.

⚙️ Input parameters

FieldTypeDefaultDescription
startUrlsarrayMix of IrishJobs listing URLs and direct job-detail URLs. Required.
maxItemsinteger1000Max job rows per listing URL. Direct detail URLs always emit 1 row each.
maxConcurrencyinteger4Parallel detail-page fetches. 3–6 is the sweet spot.
maxRequestRetriesinteger6Per-URL retry budget; each retry rotates the proxy session.
enrichEmailsbooleanfalseOpt-in: discover a contact email for each hiring employer. Billed per email found, never for misses.
qualifyByPaymentbooleanfalseOpt-in, requires enrichEmails: flag employers whose websites take payments online (Stripe, Shopify, PayPal…). Free with enrichment.
proxyobjectbuilt-inOptional override. Leave empty — the built-in residential proxy is already configured and free.

📊 Output overview

Each dataset record is one job posting as a flat row. Identity fields (jobId, jobUrl, title) sit at the top level; the employer, location, and salary are small nested objects so CSV export stays readable (employer.name, salary.min, …). Every row records which search URL it was discovered on (sourceSearchUrl), so multi-URL runs stay traceable.

📦 Output sample

Real row from a live run (description trimmed):

{
"rowType": "job",
"jobId": "107578248",
"jobUrl": "https://www.irishjobs.ie/job/healthcare-assistant-home-care/hibernia-home-care-job107578248",
"sourceSite": "irishjobs.ie",
"title": "Dublin North Central - Healthcare Assistant / Home Care Support Worker (Full-Time)",
"description": "<div><strong>Job Title: Healthcare Assistant / Home Care Support Worker (Full-Time)</strong>…",
"datePosted": "2026-06-24T03:13:45.33Z",
"validThrough": "2026-07-24T22:00:00Z",
"industry": "Health, Health-Nursing",
"directApply": true,
"workType": "Permanent",
"contractType": null,
"workFromHome": null,
"skills": [],
"employer": {
"name": "Hibernia Home Care",
"url": "https://www.irishjobs.ie/jobs/hibernia-home-care-group?cmpId=1348188&cmp=1",
"logoUrl": "https://www.irishjobs.ie/CompanyLogos/715b3506-a4ef-4baa-a31b-9bf506f2c173.png",
"id": 1348188,
"jobsCount": 10
},
"location": {
"text": "Dublin, County Dublin, Dublin, IE",
"locality": "Dublin, County Dublin",
"region": "Dublin",
"postalCode": null,
"country": "IE",
"lat": 53.33306,
"lng": -6.24889
},
"salary": {
"rawText": "€32,691 per annum",
"min": 32691,
"max": null,
"currency": "EUR",
"period": "annum"
},
"applyUrl": "https://www.irishjobs.ie/job/healthcare-assistant-home-care/hibernia-home-care-job107578248",
"applyType": "internal",
"scrapedAt": "2026-07-13T13:13:47.372Z"
}

🗂 Key output fields

FieldNotes
Identity
jobIdStable numeric ID from the URL suffix — use for dedup across runs.
jobUrlCanonical job page on IrishJobs.ie.
sourceSearchUrlThe listing URL this row was discovered on (null for direct detail inputs).
Posting
title, descriptionDescription is the full HTML body.
datePosted, validThroughISO 8601. validThrough = closing date.
industryIrishJobs category tag, e.g. "Health, Health-Nursing".
workType"Permanent" / "Contract" / "Temporary" / "Part Time" — from the job-ad metadata.
workFromHome"Hybrid" / "Remote" / null — from the listing feed.
skillsSkill tags from the listing feed, when the employer added them.
Employer
employer.name, employer.id, employer.logoUrlemployer.url is the IrishJobs company-jobs page (not the company's own website).
employer.jobsCountLive postings count for this employer — a hiring-intensity signal.
Location
location.lat / location.lngPopulated when the posting carries geo data.
Salary
salary.rawTextAlways present — "€ Not Disclosed" when the employer hid it (common in Ireland).
salary.min/max/currency/periodOnly set when a real band was disclosed. Never inferred or predicted.
Apply
applyType"internal" (one-click on IrishJobs, applyUrl = job page) / "external" (recruiter ATS — resolve by opening jobUrl) / "unknown".
Enrichment (opt-in)
contactEmail, contactWebsite, emailEnrichmentOnly when enrichEmails: true.

❓ FAQ

Do search filters from the website work? Yes — your URL is passed to IrishJobs' own search backend verbatim, so anything the web UI can filter (keyword, county, salary, posted date, remote…) is honoured server-side. If the URL works in your browser, it works here.

Why is salary.min null on many rows? Because the employer chose "€ Not Disclosed" — roughly half of Irish postings do. The row keeps the honest raw text, and min/max stay null. We deliberately do not copy the site's "predicted salary" widget: those are estimates, not the posting's own data.

Is applyUrl always the recruiter's site? No. When applyType is "internal", the application happens on IrishJobs itself and applyUrl equals jobUrl. When it's "external", the recruiter URL is resolved by JavaScript at click-time, which a server-side scraper can't run — open jobUrl in a browser and click Apply.

How many rows will a listing produce? Up to min(maxItems, total results) per listing URL. The first API call reports the exact total, and the run log shows it up front.

Do I need to configure a proxy? No — every request already goes through the actor's built-in residential proxy at no extra cost. The proxy input exists only if you insist on your own pool.

How fresh is the data? Every run hits the live site — rows are as current as the moment the run executes. Schedule the actor for continuous monitoring.

💬 Support

  • Found a bug or need a field added? Open an issue on the actor's Issues tab — I usually respond within a day.
  • Custom requirements (other Stepstone-family boards, bespoke output shapes, delivery to your DB)? Message me through Apify.

🛠 Additional services

  • Contact-email enrichment — flip enrichEmails on to get a contact email per hiring employer, billed only per email found.
  • Payment qualification — flip qualifyByPayment on (free with enrichment) to flag employers that take payments online: processor stack, Stripe key exposure, confidence score.

🔎 Explore more scrapers

Scraping other Stepstone-family boards? Same engine, dedicated actors:

Plus CharityJob, Goodmoves, and 100+ other actors on the memo23 profile.


⚠️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by IrishJobs.ie, The Stepstone Group, or any of their subsidiaries or affiliates. All trademarks mentioned are the property of their respective owners.

The scraper accesses only publicly available job-posting pages — no authenticated endpoints, recruiter-only features, or content behind an IrishJobs login. Users are responsible for ensuring their use complies with IrishJobs.ie's Terms of Service, applicable data-protection law (GDPR, CCPA, etc.), and any contractual obligations of their own organisation.


SEO Keywords

irishjobs scraper, scrape irishjobs.ie, irishjobs api, Apify irishjobs, ireland jobs scraper, irish job board scraper, dublin jobs data, cork jobs scraper, ireland job postings api, jobs ireland dataset, irish salary benchmark data, recruitment data ireland, hiring trends ireland, job market analysis ireland, ireland vacancy data, stepstone ireland scraper, jobs.ie alternative scraper, indeed ireland alternative, job listings extraction ireland, EUR salary data, JobPosting JSON-LD scraper, jobs to CSV ireland, labour market data ireland