Jooble Scraper — 70+ Countries, Remote, Full Descriptions avatar

Jooble Scraper — 70+ Countries, Remote, Full Descriptions

Under maintenance

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Jooble Scraper — 70+ Countries, Remote, Full Descriptions

Jooble Scraper — 70+ Countries, Remote, Full Descriptions

Under maintenance

Scrape 2M+ jobs from Jooble across 70+ countries. Remote filter, full descriptions, salary parsing, quality signals. $1.50/1k.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Jooble Scraper

Jooble Scraper

Scrape structured job listings from Jooble — Global. 2,000,000+ active listings. No API key required.


Why this scraper?

🌍 Global job aggregator — 70+ countries

Jooble aggregates job listings from thousands of sources across 70+ countries and multiple languages.

📄 Full job descriptions

Enable fetchDetails to retrieve complete job descriptions in all three formats.

💰 Multi-currency salary data

Salary ranges parsed in the local currency where published.

🔄 Repost detection

Cross-run deduplication with a 90-day TTL. Use skipReposts: true for new-only feeds.

🌐 Multi-country, multi-language

Configure country and language inputs to target specific markets.

⚙️ No API key required

Runs without any third-party credentials.


Input parameters

ParameterTypeDescriptionDefault
keywordsstringJob title, keyword, or skill to search for.
locationstringCity or region to filter by. Leave empty to search all locations.
countrystringTarget country code (e.g. AR, CO, MX). Required for multi-country actors.
maxResultsintegerMaximum number of results to return.5
daysOldintegerOnly return listings published within the last N days.
skipRepostsbooleanSkip listings already seen in previous runs (90-day deduplication window).true
startUrlsarrayList of specific URLs to scrape. Bypasses the search input.
proxyConfigurationstringResidential proxy recommended for best results.{'useApifyProxy': True, 'apifyProxyGroups': ['RESIDENTIAL']}

Output schema

Each result contains the following fields.

FieldTypeDescription
idstringUnique job listing ID from the source platform.
urlstringDirect URL to the job listing.
titlestringJob title as published.
companystringEmployer / company name.
locationstringFull location string as published.
citystringCity of the work location.
countrystringCountry code (ISO 3166-1 alpha-2).
contractTypestringContract type (permanent, contract, temporary, etc.).
workSchedulestringWork schedule (full-time, part-time, etc.).
salaryMinnumberMinimum salary (null if not published by employer).
salaryMaxnumberMaximum salary (null if not published by employer).
salaryCurrencystringISO 4217 currency code (null if no salary published).
salaryPeriodstringSalary period: YEAR / MONTH / WEEK / DAY / HOUR.
publishDatestringPublication date (YYYY-MM-DD).
publishDateISOstringPublication date in ISO 8601 format.
sourcestringSource domain name.
scrapedAtstringISO 8601 timestamp of when this item was scraped.
contentHashstringMD5 hash of key fields for change detection (16 chars).
summarystringHuman-readable one-line summary of the listing.
changeStatusstringChange status: NEW / MODIFIED / UNCHANGED.
isRepostbooleanTrue if this listing was seen in a previous run (90-day window).
originalPublishDatestringOriginal publish date if this is a repost (null otherwise).
originalUrlstringOriginal URL if this is a repost (null otherwise).
languagestringLanguage code for the listing.

Example output record:

{
"id": "123456",
"url": "https://jooble.org/jobs/senior-developer/123456",
"title": "Software Developer",
"company": "Booking.com",
"location": "Amsterdam",
"city": "Amsterdam",
"country": null,
"contractType": "Permanent",
"workSchedule": "Full-time",
"salaryMin": 45000,
"salaryMax": 60750,
"salaryCurrency": "EUR",
"salaryPeriod": "YEAR",
"publishDate": "2026-04-15",
"publishDateISO": "2026-04-15",
"source": "jooble.org",
"scrapedAt": "2026-04-24T09:00:00.000Z",
"contentHash": "a3f1b2c4d5e67890",
"summary": "Software Developer · Booking.com · Amsterdam",
"changeStatus": "NEW",
"isRepost": false,
"originalPublishDate": null,
"originalUrl": null,
"language": null
}

Examples

1 — Search for Software Developer roles in Amsterdam

{
"searchQuery": "developer",
"location": "Amsterdam",
"maxResults": 100
}

2 — All listings without filters

{
"searchQuery": "",
"maxResults": 500
}

3 — Scrape a specific search page directly via startUrls

{
"startUrls": [
{
"url": "https://jooble.org/jobs?q=developer"
}
],
"maxResults": 50
}

4 — Daily feed — new listings only, past 24 hours, no reposts

{
"searchQuery": "",
"daysOld": 1,
"skipReposts": true,
"maxResults": 1000
}

💰 Pricing

$1.50 per 1,000 results — you only pay for successfully retrieved listings. Failed retries and filtered reposts are never charged.

ResultsCost
100~$0.15
1,000~$1.50
10,000~$15.00
100,000~$150.00

Flat-rate alternatives typically charge $29–$49/month regardless of usage.

Use the Max results cap in the input to control your spend exactly.


Performance

Run sizeApprox. time
100 listings~2 min
1,000 listings~15 min
10,000 listings~2.5 hours

Known limitations

  • Salary: Not all employers publish salary information — salaryMin and salaryMax may be null.
  • fetchDetails: Setting fetchDetails: false returns list-page fields only; description fields will be null.

Technical details

  • Source: jooble.org — Global's job market
  • Memory: 256 MB
  • Repost storage: KeyValueStore jooble-html-job-dedup, 90-day TTL
  • Retry: Automatic retry on network errors, exponential backoff, 3 attempts per request

Additional services

Need a custom actor, additional filters, scheduled runs, or integration support? Send an email to info@unfencedgroup.nl — we build on request.


Part of the Unfenced Group European job board scraper portfolio — 50+ job markets covered. Built by unfenced-group · Issues? Open a ticket or send a message.