Bayt Scraper - Middle East Jobs, Salaries & Companies avatar

Bayt Scraper - Middle East Jobs, Salaries & Companies

Pricing

from $0.85 / 1,000 job delivereds

Go to Apify Store
Bayt Scraper - Middle East Jobs, Salaries & Companies

Bayt Scraper - Middle East Jobs, Salaries & Companies

Scrape bayt.com jobs in the UAE, Saudi Arabia, Qatar, Kuwait, Egypt and 11 more countries by keyword, city, date, career level and contract: title, company, size, industry, salary, experience, education, skills, full description. Schedule it with onlyNew for alerts. Error rows are free.

Pricing

from $0.85 / 1,000 job delivereds

Rating

0.0

(0)

Developer

Scrapewise Data

Scrapewise Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Bayt Scraper: Middle East jobs with salaries, companies and full descriptions

Bayt Scraper collects job listings from bayt.com, the largest job board of the Middle East and North Africa, without an account, cookies or a browser. Search by keyword in the UAE, Saudi Arabia, Qatar, Kuwait, Oman, Bahrain, Egypt, Jordan and eight more countries, narrow it down by city, date, career level, contract and employer type, or paste any bayt.com search link. Each job comes back as one clean row: title, company with size and industry, city and country, contract, experience, education, salary range when the employer publishes it, skills, preferred candidate profile, posted and closing dates, and the full description in text and HTML.

It is used for salary and hiring research in the Gulf, for job aggregators and alert services, for recruitment agencies watching which companies are hiring, and for labor market dashboards across the GCC and North Africa.

At a glance

WhatPrice
Job deliveredUS$ 1.00 per 1,000 jobs (US$ 0.001 each)
Run startUS$ 0.005 per run
  • 500 accountant jobs in the UAE with full details = US$ 0.505.
  • Error rows, duplicates and jobs skipped by onlyNew are never charged. maxItems is a hard cap, and a spending limit set on the run stops it cleanly with everything delivered so far.
  • Runs on the Apify datacenter proxy, which bayt.com accepts. No residential proxy cost in the normal case.

Quick start

{
"searchQueries": ["accountant"],
"country": "uae",
"maxItems": 50
}

Sales jobs in two Saudi cities, full time, posted in the last 30 days:

{
"searchQueries": ["sales"],
"country": "saudi-arabia",
"cities": ["Riyadh", "Jeddah"],
"postedWithin": "30d",
"employmentTypes": ["Full time"],
"maxItems": 200
}

A search link copied from the site, used as it is (every filter in the link is kept):

{
"startUrls": ["https://www.bayt.com/en/qatar/jobs/civil-engineer-jobs/"],
"maxItems": 100
}

Single job pages work too: paste links like https://www.bayt.com/en/uae/jobs/<job-title>-<id>/.

Input

FieldWhat it does
searchQueriesJob titles or keywords, one per line. Each keyword is one search. Empty with no links = every job of the country (or city).
countryUAE by default. Also Saudi Arabia, Qatar, Kuwait, Oman, Bahrain, Egypt, Jordan, Lebanon, Iraq, Morocco, Algeria, Tunisia, Libya, Pakistan, India, or international for all countries at once.
citiesOptional cities inside the country, such as Dubai, Abu Dhabi, Riyadh, Jeddah, Doha or Cairo. Each city is searched for every keyword.
postedWithinany, 24h, 7d or 30d, the site's own "Date posted" filter.
careerLevelsStudent/Internship, Fresh graduate, Entry level, Mid career, Management, Director/Head, Senior executive.
employmentTypesFull time, Part time, Contractor, Freelance, Internship, Temporary.
companyTypesEmployer (private sector), Employer (public sector), Recruitment agency, Non-profit organization.
remoteOnlyOnly jobs marked as work from home.
easyApplyOnlyOnly jobs that take applications directly on bayt.com.
startUrlsbayt.com search links (with any filter set on the site) or single job links.
includeDetailsOn by default: opens each job page for description, skills, salary, education, preferred candidate, company size and industry. Off: faster, search card fields only.
maxItemsCap for the whole run, across all searches (default 50; 0 = no cap).
onlyNewRemembers what earlier runs of the same search delivered and returns only new jobs. Built for schedules.
proxyConfigurationApify datacenter proxy by default.

Several values inside one filter add up (OR), and different filters narrow each other (AND), exactly like on the site.

Output

One row per job. Fields that bayt.com does not give for a job are null; nothing is invented.

FieldDescription
jobIdbayt.com job id
titleJob title as published
companyName, companyId, companyUrl, companyLogoEmployer name, bayt.com company id, company page and logo
companySize, companyIndustryEmployee range (for example 50-99) and industry, when the employer has a profile
location, city, region, country, countryCodeLocation as shown on the card, plus the structured address (ISO country code)
employmentTypeFULL_TIME, PART_TIME, CONTRACTOR, TEMPORARY, INTERN...
employmentSummary, experienceContract, career level and experience line as the site shows it
minExperienceYearsMinimum experience in years, when the job sets one
salaryMin, salaryMax, salaryCurrency, salaryPeriodSalary range when published (about 4 in 10 jobs in our tests)
educationRequired degree category, when set
openingsNumber of open positions, when set
nationalityRestrictionFor example "Saudi nationals" or "UAE nationals" when the job is limited to citizens
preferredCandidateThe site's "Preferred candidate" block: years of experience, degree, career level, residence, nationality...
isRemotetrue for work from home jobs (set when the search uses the remote filter or the job says so)
summaryThe short summary bayt.com shows on the search card
skillsThe "Skills" section of the job page
description, descriptionHtmlFull description, as plain text and as the original HTML
postedAt, postedAgo, datePosted, validThroughExact posting time, the "x days ago" label, posting date and closing date
easyApply, directApplyWhether the job takes applications on bayt.com
isAggregatedtrue for jobs bayt.com collected from other sources
urlJob page on bayt.com
sourceQueryThe keyword, city or link that found the job
scrapedAt, errorCode, errorCollection time; error fields are null on job rows

Example (real row, shortened texts)

{
"type": "job",
"jobId": "5495705",
"title": "Sales Consultant",
"companyId": "2322959",
"companyLogo": "https://secure.b8cdn.com/70x70/images/logo/59/2322959_logo_1792140474_n.png",
"companySize": "50-99",
"companyIndustry": "Perfume & Cosmetics",
"city": "As Sulaymaniyah",
"region": "Riyadh",
"country": "Saudi Arabia",
"countryCode": "SA",
"employmentType": "FULL_TIME",
"employmentSummary": "Full time · Mid career · 1 - 10 Years of Experience",
"minExperienceYears": 1.0,
"salaryMin": 1500,
"salaryMax": 2000,
"salaryCurrency": "USD",
"salaryPeriod": "month",
"education": "high school",
"openings": 10,
"preferredCandidate": {
"Years of experience": "1 - 10 years",
"Degree": "High school or equivalent",
"Career level": "Mid career"
},
"summary": "Elevate your career in sales consulting with a focus on luxury products...",
"skills": "- Previous experience in luxury product sales or beauty products.\n- Good knowledge of luxury products and global brands...",
"description": "Responsibilities and Duties\n- Welcome clients and provide a refined and professional shopping experience...",
"postedAt": "2026-10-16T18:56:26Z",
"postedAgo": "5 hours ago",
"datePosted": "2026-10-16",
"validThrough": "2026-11-15T00:00:00Z",
"easyApply": true,
"directApply": true,
"isAggregated": false,
"sourceQuery": "sales in Riyadh (saudi-arabia)",
"errorCode": null,
"error": null
}

Company names keep the language the employer used (Arabic names stay in Arabic). Job texts come in English when bayt.com offers the English version.

Errors you may see

Error rows have type: "error", an errorCode and a plain message. They are never charged.

errorCodeMeaningWhat to do
INVALID_INPUTA filter value is not one of the allowed optionsUse the options listed in the input form
INVALID_URLThe link is not a bayt.com search or job linkCopy the link from the address bar on bayt.com
NO_RESULTSbayt.com has no job for that search and filtersUse fewer filters, another country or a broader keyword
NOT_FOUNDA job link is no longer onlineJobs close; search again for current ones
BLOCKEDbayt.com refused every attempt for a searchRun again in a few minutes
UNEXPECTEDAnything else; the run still ends cleanlyRun again; if it repeats, open an issue with the run link

Integrations, scheduling and AI agents

  • Schedule a daily run with onlyNew on in Apify schedules to get only the jobs posted since the last run, for alerts or a hiring tracker.
  • Export as JSON, CSV, Excel or XML, or read the dataset from the Apify API.
  • Connect it to Make, n8n, Zapier or Google Sheets through Apify integrations, for example to post new Dubai jobs to Slack.
  • AI agents: call it as a tool through the Apify MCP server in Claude, ChatGPT, Cursor or any MCP client, for example "list 100 data analyst jobs in Riyadh posted this week and summarize the salary ranges".

FAQ

Do I need a bayt.com account? No. The Actor reads the same public pages any visitor sees.

How many jobs can I get? As many as bayt.com lists for the search. A broad search such as all jobs in the UAE has thousands; the site shows 30 per page and the Actor walks the pages until the end or until maxItems.

How fast is it? About 50 jobs with full details in 10 to 15 seconds in our tests. With includeDetails off it is several times faster, since one page brings 30 jobs.

Why is the salary empty on some jobs? Many employers in the region do not publish a salary. When bayt.com shows a range, it is in salaryMin, salaryMax, salaryCurrency and salaryPeriod.

Can I search in Arabic? Yes, Arabic keywords work. Results come from the English version of the site.

Is personal data included? No. The Actor returns job and company data only. No recruiter names, and e-mail addresses or phone numbers written inside job texts are replaced with [contact removed].

What does onlyNew remember? Job ids per search (keyword, country, city and filters), stored in a key-value store in your own Apify account. Change any filter and it counts as a new search.

Limitations

  • The site shows up to about 10,000 jobs for one search; split very broad searches by city or filter.
  • companySize, companyIndustry, education, openings and salary only exist when the employer fills them in.
  • Jobs that bayt.com collects from other sources (isAggregated: true) have no company page and fewer details.
  • cities must be spelled as on bayt.com in English (Dubai, Abu Dhabi, Riyadh, Al Khobar...).

Changelog

  • 16 Oct 2026: first version. Keyword, country, city, date, career level, contract, employer type, remote and Easy Apply filters; search and job links; full details with salary, skills and preferred candidate; onlyNew for schedules; free error rows.