Bayt.com Scraper — MENA Job Listings
Pricing
from $0.75 / 1,000 results
Bayt.com Scraper — MENA Job Listings
Under maintenanceExtract job listings from Bayt.com, the #1 job board in the Middle East. Search by keyword, location & country. Returns 33 fields including salary, career level, skills & full descriptions. $0.75 per 1,000 results.
Pricing
from $0.75 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Bayt.com Scraper

Extract structured job listings from Bayt.com — the leading job portal for the Middle East and North Africa. Search by keyword, location, and country. Filter by age, employment type, and career level. Returns 33 fields per listing including full descriptions, structured salary data, skills, and more.
Price: $0.75 per 1,000 results — the lowest price on the Apify Store for Bayt.com data.
Features
- Search by keyword and location across all MENA countries or a specific country portal (UAE, Saudi Arabia, Kuwait, Qatar, Bahrain, Oman, Egypt, Jordan, Lebanon)
- Full job details — description (HTML, plain text, Markdown), salary breakdown, career level, years of experience, industry, company size, skills
- Structured salary data —
salaryMin,salaryMax,salaryCurrency,salaryPeriodalways present as numeric fields - Incremental scraping — skip jobs already seen in previous runs using built-in deduplication
- Age filter — only return listings posted within N days
- Direct URL support — pass any Bayt.com search or job page URL directly via
startUrls - Export anywhere — JSON, CSV, or Excel via Apify datasets; webhook or API integration ready
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
keywords | String | — | Job title or keywords (e.g. software engineer) |
location | String | — | City or region (e.g. Dubai, Riyadh) |
country | Enum | INTERNATIONAL | Country portal: INTERNATIONAL, UAE, KSA, KWT, QAT, BHR, OMN, EGY, JOR, LBN |
maxResults | Integer | 50 | Maximum results to return (0 = unlimited, max 10,000) |
daysOld | Integer | 0 | Only include jobs posted within this many days (0 = no limit) |
fetchDetails | Boolean | true | Fetch each job's detail page for full description and metadata |
skipReposts | Boolean | false | Skip jobs seen in a previous run (for scheduled/incremental use) |
startUrls | Array | — | Override search with direct Bayt.com URLs |
proxyConfig | Object | Residential | Proxy configuration — residential proxies recommended |
Output schema
Every listing returns 33 fields. Missing values are always null, never omitted.
| Field | Type | Description |
|---|---|---|
jobId | String | Unique job ID from the listing URL |
title | String | Job title |
company | String | Company name |
companyUrl | String | Link to company profile on Bayt.com |
location | String | Location as shown on the listing |
city | String | Extracted city |
country | String | Country portal (UAE, KSA, INTERNATIONAL, etc.) |
salaryText | String | Raw salary string (e.g. AED 10,000 – 15,000 /month) |
salaryMin | Number | Minimum salary (numeric) |
salaryMax | Number | Maximum salary (numeric) |
salaryCurrency | String | Currency code (AED, SAR, USD, etc.) |
salaryPeriod | String | monthly, yearly, or daily |
employmentType | String | Full-time, Part-time, Contract, etc. |
careerLevel | String | Entry Level, Mid Career, Senior, etc. |
yearsOfExperience | String | Required years of experience |
industry | String | Industry / sector |
companySize | String | Number of employees |
descriptionHtml | String | Full description as raw HTML |
descriptionText | String | Full description as plain text |
descriptionMarkdown | String | Full description as Markdown |
skills | Array | Required skills or tags |
nationality | String | Preferred candidate nationality |
gender | String | Preferred candidate gender |
directApply | Boolean | Supports direct apply on Bayt.com |
totalOpenings | Number | Number of open positions |
isRemote | Boolean | Remote role |
isExternal | Boolean | Apply link redirects externally |
isRepost | Boolean | Seen in a previous run (dedup) |
url | String | Listing URL on Bayt.com |
applyUrl | String | Application page URL |
postedDate | String | ISO 8601 posted date |
validThrough | String | Application deadline |
scrapedAt | String | ISO 8601 scrape timestamp |
source | String | Always bayt.com |
Example input
{"keywords": "data analyst","location": "Dubai","country": "UAE","maxResults": 100,"daysOld": 14,"fetchDetails": true}
Example output
{"jobId": "data-analyst-in-acme-corp-4521839","title": "Senior Data Analyst","company": "Acme Corp","companyUrl": "https://www.bayt.com/en/company/acme-corp-1234567/","location": "Dubai, UAE","city": null,"country": "UAE","salaryText": "AED 12,000 - AED 18,000 /month","salaryMin": 12000,"salaryMax": 18000,"salaryCurrency": "AED","salaryPeriod": "monthly","employmentType": "Full Time","careerLevel": "Mid Career","yearsOfExperience": "3 - 5 Years","industry": "Information Technology","companySize": "501-1000 Employees","descriptionHtml": "<p>We are looking for...</p>","descriptionText": "We are looking for...","descriptionMarkdown": "We are looking for...","skills": ["SQL", "Python", "Tableau", "Power BI"],"nationality": null,"gender": null,"directApply": true,"totalOpenings": 2,"isRemote": false,"isExternal": false,"isRepost": false,"url": "https://www.bayt.com/en/uae/jobs/senior-data-analyst-in-acme-corp-4521839/","applyUrl": "https://www.bayt.com/en/uae/jobs/senior-data-analyst-in-acme-corp-4521839/apply/","postedDate": "2026-04-20T00:00:00.000Z","validThrough": null,"scrapedAt": "2026-04-23T10:14:00.000Z","source": "bayt.com"}
Performance
- Speed: ~200–400 results/minute with
fetchDetails: true; ~1,000+/minute withfetchDetails: false - Memory: 256 MB default
- Proxy: Residential proxies required — included in your Apify plan
Scheduling / incremental mode
Run on a schedule with skipReposts: true to collect only new listings each run:
{"keywords": "software engineer","country": "UAE","maxResults": 500,"skipReposts": true}
Pricing
$0.75 per 1,000 results — pay only for what you extract. No subscription required.
| Event | Price |
|---|---|
| Actor start | $0.00005 |
| Per result | $0.00075 |
A typical run of 1,000 results costs approximately $0.75.
About Unfenced Group
Unfenced Group builds production-grade job board scrapers across Europe and the Middle East. Browse the full portfolio at apify.com/unfenced-group.