NaukriGulf Jobs Scraper $0.8๐ฐ
Under maintenancePricing
from $0.80 / 1,000 results
NaukriGulf Jobs Scraper $0.8๐ฐ
Under maintenanceFrom ๐ฐ$0.8/1K. Scrape job listings from naukrigulf.com across the Gulf โ UAE, Saudi Arabia, Qatar, Kuwait, Oman and Bahrain โ with salaries, nationality and contact data, filters and incremental monitoring. For recruitment analysis, market research, and HR analytics and much more.
Pricing
from $0.80 / 1,000 results
Rating
0.0
(0)
Developer
Corvuslab
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
NaukriGulf Jobs Scraper & Monitor โ Gulf Job Board
Scrape job listings from naukrigulf.com, the Gulf region's largest job board, covering the UAE, Saudi Arabia, Qatar, Kuwait, Oman and Bahrain. Every record comes back as clean, structured JSON: salary ranges with currency, nationality and gender requirements, education, recruiter contact details, full job descriptions and company metadata.
Built for recurring use โ run it once for a dataset, or point it at a search and let incremental mode send you only what changed since yesterday.
โจ Key features
- โก Fast and reliable โ built for large searches and repeat runs. Results stream straight into your dataset as they are found, and you pay for results, not for waiting.
- โป๏ธ Incremental mode โ recurring runs emit only new, updated and reappeared jobs. Unchanged jobs are skipped before they cost anything, so a quiet day can cost nothing at all.
- ๐ฐ Structured salary โ numeric
salaryMin/salaryMaxwithsalaryCurrency(AED, SAR, QAR โฆ), plus the display text, so you can sort and filter without parsing strings. - ๐ Gulf-specific fields โ
nationality,gender,educationandlocalities, the fields that actually decide who a Gulf posting is aimed at. - ๐ง Contact extraction โ recruiter name, designation and email from the posting, plus emails, phone numbers, URLs and social profiles pulled out of the description text.
- ๐ Descriptions always included โ every job carries its full description, whether or not detail enrichment is switched on.
- ๐๏ธ Real filters โ experience, salary band, date posted, industry, nationality and gender are applied by the job board itself, so you download only what you asked for.
- ๐ Paste-mode โ drop naukrigulf.com URLs straight from your browser: search pages, SEO listing pages or individual job pages.
- ๐ฆ Compact mode โ trimmed payloads for AI agents and MCP clients.
- โ๏ธ Description truncation โ cap description length to control LLM prompt costs.
- ๐ Notifications โ Telegram, Slack, Discord, WhatsApp Cloud API and generic webhooks (n8n, Make, Zapier).
- ๐ค Export anywhere โ JSON, CSV or Excel download, or stream via the Apify API.
๐ฏ Use cases
- ๐งฒ Recruitment & staffing agencies โ find employers hiring right now and reach the person posting the role: recruiter name, designation and email come attached to the record. Filter by industry, experience and location to build a qualified call list.
- ๐ Salary & market intelligence โ numeric salary ranges with currency, experience bands, nationality and education requirements make Gulf compensation benchmarking possible without parsing free text. Track how demand shifts by title, city or industry over time.
- ๐ฐ๏ธ Hiring monitors & alerts โ point incremental mode at a saved search and get a daily change feed delivered to Telegram, Slack, Discord, WhatsApp or your own webhook. Ideal for watching a competitor, a client account or a single job title.
- ๐งฑ Job boards & aggregators โ
NEW,UPDATEDandEXPIREDchange types let you upsert into your own database instead of re-ingesting the whole board on every sync. - ๐ค AI agents & LLM pipelines โ compact mode plus description truncation keeps payloads and token usage predictable for AI agents and MCP clients.
๐ How to use it
- Open the Actor and put a keyword in ๐ Search keywords โ for example
accountant. - Optionally set ๐ Location (
dubai,riyadh,qatar, or leave empty for the whole Gulf). - Set ๐ข Max results.
- Click Start and download the dataset when it finishes.
No accounts, keys or proxy setup โ enter a keyword and press Start.
๐ฅ Input
Only one of query, location, startUrls or jobUrls is required. Everything else is optional.
| Input | Type | What it does |
|---|---|---|
๐ฏ mode | string | search (keyword + filters) or jobUrls (a fixed list of jobs). |
๐ query | string | Job keywords. Comma-separate for several searches in one run. |
๐ location | string | City or country, e.g. dubai, abu dhabi, riyadh. Empty = all Gulf. |
๐ข maxResults | integer | How many jobs to fetch. 0 = unlimited. |
๐ jobUrls | array | Specific job-page URLs (or bare job IDs) to scrape. |
๐ startUrls | array | naukrigulf.com search or listing URLs, pasted from the browser. |
๐งโ๐ผ experienceLevel | array | Experience band: 0-1, 2-5, 6-10, 11-15, 16-20, 20+. |
๐ experienceYears | integer | Only jobs accepting this many years of experience. |
๐ฐ salaryBand | array | Monthly salary band in USD, e.g. 1000-2000. |
๐๏ธ datePosted | array | Posted within the last 1, 3, 7, 15, 30 or 60 days. |
๐ญ industryIds | array | Industry filter (IT, Construction, Hospitality, Medical โฆ). |
๐ nationality | array | Nationality preference: gcc, arab, indian, filipino, european, anglophone, any. |
โง gender | array | Gender stated in the posting. |
โก easyApplyOnly | boolean | Only jobs you can apply to on-site. |
โ๏ธ sortBy | string | relevance or date (newest first). |
๐ฌ includeDetails | boolean | Fetch detail pages for salary, nationality, contact data. Default true. |
๐ descriptionFormat | string | all, text, html or markdown. |
โ๏ธ descriptionMaxLength | integer | Truncate descriptions to N characters. 0 = no limit. |
๐ฆ compact | boolean | Core fields only. |
๐งน excludeEmptyFields | boolean | Drop null and empty fields from output. |
๐ detailConcurrency | integer | Parallel detail requests (1โ20, default 8). |
โป๏ธ incrementalMode | boolean | Emit only what changed since the previous run. |
๐๏ธ stateKey | string | Names the tracked search. Auto-derived when empty. |
๐ emitUnchanged | boolean | Also emit unchanged jobs. |
๐๏ธ emitExpired | boolean | Emit jobs that have disappeared since last run. |
๐ซ skipReposts | boolean | Drop reposts of previously seen jobs. |
| ๐ notifications | various | telegramToken + telegramChatId, slackWebhookUrl, discordWebhookUrl, WhatsApp Cloud API fields, webhookUrl + webhookHeaders. |
๐ proxyConfiguration | object | Optional. Not needed for normal use. |
๐ค Output
One dataset item per job. Sample record (trimmed):
{"jobId": "260726001535","title": "Office Assistant","summary": "Manage daily office operations, provide customer service, maintain records...","company": "Confidential Company","companyId": "311727","companyType": "Corporate","location": "Dubai , Abu Dhabi , Sharjah - United Arab Emirates (UAE)","jobCountry": "United Arab Emirates (UAE)","localities": ["Dubai", "Abu Dhabi", "Sharjah"],"salary": "AED 3,500 - 4,000","salaryMin": 3500,"salaryMax": 4000,"salaryCurrency": "AED","isSalaryHidden": false,"experienceMin": 0,"experienceMax": 2,"experienceText": "0-2 Years","education": "Secondary School, Any Graduation","nationality": "Any Nationality","gender": "Any","industry": "Accounting & Auditing","functionalArea": "Administration","vacancies": 2,"keywords": ["Receptionist", "Customer Service", "Office Management"],"description": "Manage and organize daily office operations...","descriptionHtml": "<ul><li>Manage and organize daily office operations...</li></ul>","descriptionMarkdown": "* Manage and organize daily office operations...","desiredCandidate": "High school diploma or equivalent...","contactName": "Vihar","contactDesignation": "Owner","contactEmail": "info@example.com","extractedEmails": ["info@example.com"],"extractedPhones": ["+971501234567"],"socialProfiles": { "linkedin": "https://www.linkedin.com/company/example" },"isEasyApply": true,"postedAt": "2026-07-26T19:14:03+00:00","url": "https://www.naukrigulf.com/office-assistant-jobs-in-dubai-uae-...-jid-260726001535","source": "naukrigulf.com","scrapedAt": "2026-07-26T19:39:00+00:00","detailFetched": true}
Incremental fields (added when incrementalMode is on): changeType
(NEW / UPDATED / UNCHANGED / EXPIRED), contentHash, isRepost, repostOfId,
repostDetectedAt.
โป๏ธ Incremental monitoring
Turn on incrementalMode and the Actor remembers what it saw last time. On the next run it
compares each job against that state and:
- emits
NEWandUPDATEDjobs, - skips unchanged jobs before they cost you anything,
- optionally reports
EXPIREDjobs that have come off the board.
Because unchanged jobs are identified and set aside before they are ever processed, a day with no movement in your search can produce zero billable results.
Use maxResults to set how many jobs of the search to examine each run. Point it at your
search once a day and you get a clean change feed instead of the same 200 rows over and over.
๐ต What you pay for
Pay-per-event: a small fee per run, plus a fee per job delivered to your dataset. Current prices are shown on this Actor's pricing panel โ there is no separate plan or subscription, and no charge for proxy, compute or storage.
You are billed for records delivered, not work done. That means:
- jobs suppressed by incremental mode are never billed,
- filters applied by the job board reduce what you download and what you pay,
- a run that finds nothing new bills only the run fee.
Incremental mode, in billable records
Watching a 100-job search once a day, where churn is the share of the search that is new or changed since yesterday:
| Daily churn | Billed per run, full re-scrape | Billed per run, incremental | Fewer billed records |
|---|---|---|---|
| 5 % | 100 | 5 | 95 % |
| 15 % | 100 | 15 | 85 % |
| 30 % | 100 | 30 | 70 % |
The first run has nothing to compare against, so it bills in full and seeds the state; every run after that bills only the delta. Over a 30-day month at 5 % churn that is 245 billable records instead of 3,000 โ about 92 % fewer.
โ FAQ
Do I need a proxy? No โ it runs fine out of the box. Apify Proxy is available under โ๏ธ Advanced if your setup requires it.
Can I get jobs from the whole Gulf at once? Yes โ leave location empty. Searching with
no keyword and no location returns the full board (tens of thousands of jobs).
Are descriptions included without detail enrichment? Yes. Turning includeDetails off
still gives you the full description; you lose salary, nationality, education and contact
fields, and the run gets faster.
Why is salary sometimes null? Many Gulf employers hide the salary. When they do,
isSalaryHidden is true and the salary fields are null.
How do I scrape one specific job? Put its URL in jobUrls, or paste it into startUrls.
Can I connect this to Slack / Sheets / n8n? Yes โ use the built-in notification channels, or Apify's integrations and webhooks.
Is scraping this legal? The Actor collects only publicly visible job postings. You are responsible for how you use the data, including GDPR-style obligations when it contains personal contact details.
๐ Integration
Run it from the Apify Console, on a schedule, via the REST API, or from the JavaScript and
Python clients. It also works as an MCP tool for AI agents โ compact mode plus
descriptionMaxLength keeps token usage small.