Nofluffjobs $1๐Ÿ’ฐ URL Search | Keyword Filtering | Rich Output avatar

Nofluffjobs $1๐Ÿ’ฐ URL Search | Keyword Filtering | Rich Output

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Nofluffjobs $1๐Ÿ’ฐ URL Search | Keyword Filtering | Rich Output

Nofluffjobs $1๐Ÿ’ฐ URL Search | Keyword Filtering | Rich Output

From $1/1K. Extract IT jobs from NoFluffJobs.com across Poland, Czechia, Slovakia, Hungary, and the Netherlands. Search by filters or use NoFluffJobs URLs. Returns salary ranges, skills, full descriptions, tasks, benefits, hiring steps, company size, GPS coordinates, and merged office locations.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 days ago

Last modified

Share

NoFluffJobs Scraper

Extract IT job listings from NoFluffJobs across five markets: Poland, Czechia, Slovakia, Hungary and the Netherlands. Every record comes with the disclosed salary range, required and nice-to-have skills, the full job description, daily tasks, benefits, recruitment steps, company size and exact GPS coordinates. Search with structured filters (category, seniority, salary, city, technology, remote) or paste NoFluffJobs URLs. You get one clean, deduplicated record per job, with all of its office locations merged into a single array.

Why this scraper

  • High data coverage: 40+ fields per job, including disclosed salary ranges, per-skill requirements, hourly and monthly salary breakdowns, daily tasks, equipment and office perks.
  • Five markets in one run: scrape Poland, Czechia, Slovakia, Hungary and the Netherlands, individually or all at once.
  • Structured search: filter by category, seniority, employment type, posting language, city, technology, remote-only and salary range, no need to hand-build URLs.
  • Clean output: one record per job, deduplicated across its location variants, with every city and its GPS in a locations array.
  • Fast and low cost: a direct data path with no heavy page rendering, so it runs on the cheap Datacenter connection and finishes quickly.
  • Cost controls built in: a configurable residential usage cap, a residential traffic budget, and automatic switching to a cheaper connection when possible.
  • Walks the whole catalogue by default: maxPages defaults to 0 (unlimited). The run walks every search-result page, stopping on its own once the region reports no more pages, a page comes back empty, or a page contributes no new jobs (repeat-page guard). maxListings remains the primary cap.
  • Resumable runs: set resumeFromRunId to a previous run or dataset id to collect only the jobs that run doesn't already have (a delta). Long unlimited runs also checkpoint their progress to the key-value store, so an Apify platform migration or a Resurrect of a failed run picks up where it left off instead of starting over.

Data you get

Sample shape: values are illustrative placeholders, not from a live listing.

FieldExample
idsenior-java-developer-sample-company-Warszawa
titleSenior Java Developer
urlhttps://nofluffjobs.com/pl/job/senior-java-developer-sample-company-warszawa
companyNameSample Company
companySize500 - 999
categorybackend
seniority["senior"]
technologyJava
salaryFrom21000
salaryTo28000
salaryCurrencyPLN
salaryTypeb2b
remotetrue
cities["Remote", "Warszawa"]
locations[{ "city": "Warszawa", "country": "Poland", "latitude": 52.0000, "longitude": 21.0000 }]
descriptionFull job description text appears here when fetchDetails is on.
requirementsMust[{ "name": "Java", "type": "main" }, { "name": "Spring", "type": "main" }]
requirementsNice[{ "name": "Kafka", "type": "nice" }]
dailyTasks["Design backend services", "Build REST APIs"]
benefits["Private healthcare", "Sport card"]
equipment{ "computer": "Notebook", "operatingSystem": "Linux" }
salaryRanges[{ "type": "b2b", "from": 130, "to": 140, "currency": "PLN", "period": "Hour" }]
recruitmentSteps["Phone screen", "Technical interview"]
onlineInterviewAvailabletrue
regionpl

When fetchDetails is off, only the list-level fields are populated (title, company, salary, category, seniority, cities, technology, remote, url); the detail-only fields stay null.

How to use

Basic search in Poland:

{
"mode": "search",
"region": "pl",
"maxListings": 100
}

Senior backend Java jobs paying at least 20000, fully remote:

{
"mode": "search",
"region": "pl",
"category": "backend",
"seniority": "senior",
"technology": "java",
"remoteOnly": true,
"minSalary": 20000,
"maxListings": 100
}

All five markets at once:

{
"mode": "search",
"region": "all",
"maxListings": 500
}

Paste URLs (a search page and a single job page):

{
"mode": "url",
"urls": [
"https://nofluffjobs.com/pl/devops",
"https://nofluffjobs.com/cz/backend?criteria=seniority%3Dsenior"
],
"maxListings": 200
}

Resume a previous run, collecting only jobs it doesn't already have:

{
"mode": "search",
"region": "pl",
"maxListings": 0,
"resumeFromRunId": "<a previous run id or dataset id from this account>"
}

Input parameters

ParameterTypeDefaultDescription
modestringsearchsearch builds a query from the filters; url fetches the URLs you paste.
regionstringplpl, cz, sk, hu, nl, or all.
keywordstring(empty)Free-text search across roles, technologies and companies.
categorystring(any)Job category, e.g. backend, frontend, devops, testing, data.
senioritystring(any)trainee, junior, mid, senior, expert.
employmentTypestring(any)b2b, permanent, mandate-contract, internship.
jobLanguagestring(any)Language the posting is written in.
citystring(any)Restrict to one city.
technologystring(any)Require a specific skill, e.g. react, kubernetes.
sortBystringrelevanceResult order: relevance, newest, salary high to low, salary low to high. Applied server-side.
remoteOnlybooleanfalseOnly jobs that offer remote work.
minSalaryinteger(none)Minimum monthly gross, region currency. Applies in both search mode and URL mode. Hourly-quoted postings are converted to a monthly figure first, so an hourly job is compared on the same basis. A posting that publishes no salary is skipped while a bound is set, and the run log names each one it skipped.
maxSalaryinteger(none)Maximum monthly gross, region currency. Applies in both search mode and URL mode, on the same basis as minSalary.
urlsarray(empty)NoFluffJobs URLs to fetch in URL mode.
fetchDetailsbooleantrueAdd the full detail fields per job.
maxListingsinteger20Main limit: max jobs to return. 0 means unlimited (then maxPages caps).
maxPagesinteger0Optional bound on pages walked per query/region (about 20 jobs per page). 0 = walk the whole catalogue: stops on its own at the region's reported page total, an empty page, or a page with no new jobs, never an artificial page cap. Does not cap job count; use maxListings for that.
resumeFromRunIdstringOptional id of a previous run (or dataset) of this actor. Jobs already in that dataset are skipped, so this run returns only new jobs (a delta).
proxyobjectApify DatacenterConnection settings.
residentialRequestCapinteger0Switch to Datacenter after N residential requests. 0 disables.
residentialBudgetMbinteger0Switch to Datacenter after N MB over residential. 0 disables.

Send results into your apps (MCP connectors)

Optionally pipe the scraped results into the apps you already use, via Model Context Protocol (MCP) connectors. This is an extra delivery step after the scrape โ€” the Apify dataset is never changed.

What gets written to the connector: a condensed, human-readable summary of each record โ€” not the full JSON. Each item becomes one entry with a title and its key fields flattened to plain text. The complete record always stays in the Apify dataset.

  1. Authorize a connector once under Apify โ†’ Settings โ†’ Integrations (Notion, Linear, Airtable, or Apify).
  2. Select it in the "Pipe results into your apps" input field. (If the picker is empty, you haven't authorized a connector yet.)
  3. For Notion, also set notionParentPageUrl to the page where items should be created.

The connection is mediated by Apify's MCP proxy, so this actor never sees your third-party credentials. Leave the field empty to skip.

Output example

Sample shape: values are illustrative placeholders, not from a live listing.

{
"id": "senior-java-developer-sample-company-Warszawa",
"reference": "REF-0001",
"title": "Senior Java Developer",
"url": "https://nofluffjobs.com/pl/job/senior-java-developer-sample-company-warszawa",
"region": "pl",
"companyName": "Sample Company",
"companySize": "500 - 999",
"companyProfileUrl": "https://nofluffjobs.com/company/sample-company-00000000",
"category": "backend",
"seniority": ["senior"],
"technology": "Java",
"remote": true,
"fullyRemote": true,
"remotePercent": 100,
"cities": ["Remote", "Warszawa"],
"locations": [
{ "city": "Warszawa", "country": "Poland", "countryCode": "POL", "latitude": 52.0000, "longitude": 21.0000 }
],
"salaryFrom": 21000,
"salaryTo": 28000,
"salaryCurrency": "PLN",
"salaryType": "b2b",
"salaryRanges": [
{ "type": "b2b", "from": 130, "to": 140, "currency": "PLN", "period": "Hour" }
],
"description": "Full job description text appears here when fetchDetails is on.",
"dailyTasks": ["Design backend services", "Build REST APIs"],
"requirementsMust": [
{ "name": "Java", "type": "main" },
{ "name": "Spring", "type": "main" }
],
"requirementsNice": [{ "name": "Kafka", "type": "nice" }],
"requirementLanguages": ["en"],
"benefits": ["Private healthcare", "Sport card"],
"officePerks": ["Free coffee"],
"equipment": { "computer": "Notebook", "operatingSystem": "Linux" },
"recruitmentSteps": ["Phone screen", "Technical interview"],
"recruitmentLanguages": ["pl", "en"],
"onlineInterviewAvailable": true,
"expiresAt": "2026-01-01T00:00:00.000Z"
}

Plan requirement

This actor runs on the Apify Datacenter connection by default, which is included on every plan, including the free plan. No residential connection is required.

Residential is offered as an option for users who want geo-diverse exit IPs, but it is not needed for this site. If you do select a Residential connection, use the residential request cap and traffic budget to keep costs predictable; the actor will automatically switch back to the cheaper Datacenter connection once a cap is reached.