Poland Service Leads & Oferteo Job Requests
Pricing
from $5.00 / 1,000 results
Poland Service Leads & Oferteo Job Requests
Find fresh buyer-intent leads and service requests across Poland from Oferteo. Search by trade, service, city, or region and get ranked sales opportunities with buyer type, urgency, freshness, and match reasons. Built for lead generation, CRM, n8n, Make, MCP, and AI agents.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
IntentSignals
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
an hour ago
Last modified
Categories
Share
Find fresh Oferteo job requests that match the service you sell, then return only the strongest public opportunities — ranked by relevance, freshness, urgency, buyer type, and scope.
Enter a service such as electrician, hydraulik, web design, sprzątanie, or accounting, optionally add a location, and the Actor handles the Oferteo category targeting and qualification for you.
Important: this Actor reads public Oferteo request-listing data only. It does not log in, unlock paid contact details, bypass CAPTCHAs, or automate Oferteo's paid contact flow. Oferteo may require its own account or fees to contact a requester. This Actor is an independent tool and is not affiliated with or endorsed by Oferteo.
Why use this Actor?
A generic Oferteo feed can contain hundreds of unrelated requests. This Actor turns that feed into a shortlist you can actually act on.
It automatically:
- resolves the right Oferteo request category for the service you sell,
- targets a city or region when supplied,
- rejects requests that do not contain a real service match,
- removes stale requests using a hard freshness cutoff,
- optionally filters by company/private buyer,
- scores commercial fit from 0–100,
- explains why each request matched,
- sorts the best opportunities first,
- returns clean JSON/CSV/Excel-ready output for automations, CRMs, n8n, Make, agents, and scripts.
Quick start
Electrician leads in Warsaw
{"service": "electrician","location": "Warszawa","hoursBack": 48,"maxResults": 25}
Polish service names work too:
{"service": "elektryk","location": "Piaseczno","hoursBack": 24}
Website projects across Poland
{"service": "web design","hoursBack": 168,"buyerType": "company","maxResults": 50}
Cleaning jobs with an exclusion
{"service": "sprzątanie","location": "Kraków","hoursBack": 72,"excludeKeywords": ["pranie tapicerki"]}
Supported service shortcuts
The Actor has verified category routing and expanded Polish service vocabulary for common high-demand areas:
- electrician / elektryk
- plumber / hydraulik
- web design / tworzenie stron internetowych
- roofing / dekarz
- painting / malowanie
- renovation / remont
- cleaning / sprzątanie
- accounting / księgowość
- legal / prawnik / adwokat
- solar / fotowoltaika
- heat pumps / pompy ciepła
- air conditioning / klimatyzacja
- moving / przeprowadzki
- marketing / reklama
SEO/pozycjonowanie, grants/dotacje, and other service phrases also work through dynamic category discovery plus request-level keyword validation.
Input
| Field | Required | Default | What it does |
|---|---|---|---|
service | Yes | — | Trade/service to find opportunities for. Polish or English. |
location | No | Poland | City or region to target. |
hoursBack | No | 48 | Hard maximum age of a request in hours. |
buyerType | No | any | any, company, or private. |
minScore | No | 55 | Minimum commercial opportunity score, 0–100. |
maxResults | No | 25 | Maximum qualified results returned. |
keywords | No | [] | Extra positive terms that raise relevance. |
excludeKeywords | No | [] | Terms that strongly penalize unwanted work. |
Advanced API callers can also supply supported internal options such as explicit public Oferteo start URLs and proxy settings, but the Store UI intentionally keeps the main workflow simple.
Output
Each dataset row is one qualified opportunity, not one arbitrary scraped card.
Example:
{"decision": "APPLY","score": 93,"title": "Zlecenie dla elektryka na montaż instalacji elektrycznej w mieszkaniu, 11-25pkt. el.","location": "Warszawa","ageMinutes": 18,"ageLabel": "18 min","customerType": "private","urgencyText": "najbliższy wolny termin","matchedServiceTerms": ["elektryk", "elektrycz", "pkt. el"],"whyMatched": ["Service match: elektryk, elektrycz, pkt. el","Location match: warszawa","Fresh request: 18 min","Specific scope: 11-25pkt. el.","Verified request"],"targetService": "electrician","targetLocation": "Warszawa","url": "https://www.oferteo.pl/zlecenia-elektryczne/warszawa"}
The default dataset view keeps the sales decision fields first. A second api dataset view exposes the fuller structured record for downstream systems.
How qualification works
Service relevance is a hard gate. A fresh, urgent request cannot pass merely because it appears on a broad Oferteo page. The request's own public text must contain a recognized signal for the requested service.
After that gate, the deterministic scorer rewards:
- service and extra keyword matches,
- location matches,
- freshness,
- urgency,
- measurable/specific scope,
- verified requests,
- company buyers when requested.
Excluded keywords are strongly penalized. Buyer-type and age filters are applied before scoring.
No LLM is required, so results are fast, explainable, and inexpensive to produce.
Pricing
This Actor is designed for pay per event pricing.
apify-actor-start— Apify's synthetic run-start event, kept at the recommended default $0.00005 for runs using up to 1 GB RAMqualified-opportunity— $0.02 for each qualified opportunity delivered to the default dataset
Platform usage should remain included in the event prices. Users can set a maximum run charge in Apify. A run that finds no qualified opportunities therefore incurs only the tiny synthetic start charge.
Automation and API use
The Actor works well as a data source for:
- daily lead alerts,
- Google Sheets exports,
- CRM ingestion,
- n8n / Make workflows,
- sales-agent tools,
- scheduled territory monitoring,
- MCP/AI-agent workflows through Apify.
Because the output is deterministic structured JSON, downstream systems do not need to understand Oferteo page markup.
Responsible-use boundary
The Actor only processes information visible on public Oferteo request-list pages. It intentionally does not:
- reveal or reconstruct masked phone numbers or emails,
- log into a user's Oferteo account,
- purchase/unlock contacts,
- submit offers,
- bypass access controls or CAPTCHA challenges.
Users are responsible for complying with applicable laws, Oferteo's terms, and their own outreach obligations.
Troubleshooting
No results: increase hoursBack, lower minScore, broaden the location, or check whether Oferteo currently has fresh requests for that service.
Wrong service result: report the returned title and requested service through the Actor's Issues tab. The service hard gate is designed to reject unrelated requests and can be expanded with new service vocabulary.
Category changed: the Actor validates known category pages and falls back to dynamic discovery. If Oferteo changes a route, a run should fall back rather than silently trusting an unrelated page.
Local development
npm installnpm testnpm start
Deployment
Connect this GitHub repository to an Actor in Apify Console or deploy with:
apify loginapify push