Bayut Dubai $0.8πŸ’° URL Search | Location Filters | Rich Output avatar

Bayut Dubai $0.8πŸ’° URL Search | Location Filters | Rich Output

Pricing

from $0.80 / 1,000 results

Go to Apify Store
Bayut Dubai $0.8πŸ’° URL Search | Location Filters | Rich Output

Bayut Dubai $0.8πŸ’° URL Search | Location Filters | Rich Output

From $0.8/1K. Extract property listings from bayut.com. Get fully-detailed listings with price, bedrooms, baths, area, geocoordinates, agent name + mobile + WhatsApp + email, agency profile, RERA/Trakheesi permit, full photo gallery, categorised amenities, and TruCheck verification dates.

Pricing

from $0.80 / 1,000 results

Rating

5.0

(1)

Developer

AbotAPI

AbotAPI

Maintained by Community

Actor stats

0

Bookmarked

17

Total users

6

Monthly active users

2 days ago

Last modified

Share

Bayut.com Scraper

Extract property listings from bayut.com - the UAE's largest property portal. Get fully-detailed listings with price, bedrooms, baths, area, geocoordinates, agent name + mobile + WhatsApp + email, agency profile, RERA/Trakheesi permit, full photo gallery, categorized amenities, and TruCheck verification dates.

Why This Scraper?

  • 50+ fields per listing - including direct lat/lng, agent phone + WhatsApp, agency logo, RERA/Trakheesi permit number, TruCheck verification date, full photo gallery, and grouped amenities.
  • Two input modes - pick city + filter from the form, or paste any bayut.com search URL you already refined in your browser.
  • Multi-URL with forward pagination - paste many search URLs, each is walked page-by-page from where it starts.
  • For Sale and To Rent - apartments, villas, townhouses, penthouses, hotel apartments, compounds, duplex, land, full/half floors, whole buildings, bulk units, commercial.
  • All seven emirates supported - Dubai, Abu Dhabi, Sharjah, Ras Al Khaimah, Ajman, Fujairah, Umm Al Quwain.
  • TruCheck filter - only return Bayut's vetted-by-RERA verified listings to skip agency spam.
  • Fast and lightweight - ~80 MB peak memory; tens of listings per second on a UAE residential proxy.
  • Resilient session management - automatic session refresh and proxy rotation so a long run keeps producing results even when your residential pool ages.

Data You Get

Examples below are illustrative placeholders, not from a live listing.

FieldExample
externalID00000001
urlhttps://www.bayut.com/property/details-00000001.html
purposefor-sale / to-rent
propertyTypeproperty / apartments / villas / townhouses / …
titleSample Listing Title
titleArabic<Arabic title placeholder>
price (AED)1000000
currencyAED
rentFrequencyyearly / monthly / weekly / daily (rent only)
rooms, baths2, 2
area, areaUnit100.0, sqm
furnishingStatusfurnished / unfurnished / partly-furnished
completionStatuscompleted / off-plan
country, cityUAE, Dubai
neighbourhoodSample Community
buildingSample Tower
latitude, longitude25.0000, 55.0000
isVerifiedtrue (TruCheck verified)
verifiedAt, trucheckedAtUnix timestamps
agentName, agentExternalIDAgent Name, 0000000
phoneMobile, phonePhone+971500000000, +97140000000
phoneWhatsapp, phoneProxy971500000000, +97140000000
agencyName, agencyExternalIDSample Agency, 0000
agencyLogohttps://bayut-production.s3.eu-central-1.amazonaws.com/image/...
permitNumber00000000000 (Trakheesi)
referenceNumberREF-0001
images[]Full gallery, high-res CDN URLs
amenities[]Grouped by category (Features, Building, Health & Fitness, Recreation & Family, …)
descriptionFull seller description (when fetchDetails=true)
paymentPlans[]For off-plan listings
createdAt, updatedAt, reactivatedAtUnix timestamps
scrapedAtISO timestamp

How to Use

Search by City

{
"mode": "search",
"locations": ["dubai"],
"purpose": "for-sale",
"propertyType": "apartments",
"maxPages": 5,
"fetchDetails": true
}

Search with Price + Bed Filters

{
"mode": "search",
"locations": ["dubai/dubai-marina", "dubai/downtown-dubai"],
"purpose": "for-sale",
"propertyType": "apartments",
"minPrice": 1500000,
"maxPrice": 4500000,
"minBedrooms": 2,
"maxBedrooms": 3,
"verifiedOnly": true,
"sortBy": "price-asc",
"maxPages": 10
}

Multi-City Sweep

{
"mode": "search",
"locations": [
"dubai",
"abu-dhabi",
"sharjah",
"ras-al-khaimah",
"ajman"
],
"purpose": "to-rent",
"propertyType": "villas",
"rentFrequency": "yearly",
"maxPages": 3
}

Multiple URLs (URL mode)

Open Bayut in your browser, refine filters, copy the resulting URL, paste each one here. URL mode supports many URLs in a single run; each is paginated forward independently. Filter-mode fields are ignored in URL mode.

{
"mode": "url",
"urls": [
"https://www.bayut.com/for-sale/villas/dubai/?price_min=5000000",
"https://www.bayut.com/to-rent/apartments/abu-dhabi/?rent_frequency=yearly&rooms_in=2,3",
"https://www.bayut.com/for-sale/property/sharjah/page-3/"
],
"maxPages": 5,
"fetchDetails": true
}

Input Parameters

ParameterTypeDefaultDescription
modestringsearchsearch (use filters) or url (paste URLs)
locationsstring[]["dubai"]City / area slugs (search mode). Examples: dubai, abu-dhabi, dubai/dubai-marina.
urlsstring[]-Bayut search URLs (URL mode). Multiple URLs supported with forward pagination per URL.
purposestringfor-salefor-sale or to-rent
propertyTypestringpropertyproperty (any), apartments, villas, townhouses, penthouses, hotel-apartments, compounds, duplex, land, full-floors, half-floors, whole-buildings, bulk-units, commercial
minPrice, maxPriceint-Price range in AED
minBedrooms, maxBedroomsint-Bedroom range (0 = studio)
minArea, maxAreaint-Area range in square feet
furnishingstringanyany, furnished, unfurnished
completionStatusstringanyany, completed, off-plan
rentFrequencystringanyany, yearly, monthly, weekly, daily (rent only)
verifiedOnlybooleanfalseOnly TruCheck-verified listings
sortBystringpopularpopular, newest, oldest, price-asc, price-desc, verified-score-desc
maxPagesint1Pages to walk per URL / location (~24 listings per page)
maxListingsint0Hard cap across the whole run (0 = unlimited)
fetchDetailsbooltrueAdds description, amenities, full gallery, permit, payment plans
proxyobjectApify residential AEUAE residential strongly recommended

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 (the listing's name / address) and its key fields flattened to plain text. Nested objects are collapsed to their main value and long lists are trimmed. 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.

{
"externalID": "00000001",
"id": 10000000,
"url": "https://www.bayut.com/property/details-00000001.html",
"purpose": "for-sale",
"propertyType": "property",
"title": "Sample Listing Title",
"price": 1000000,
"currency": "AED",
"rentFrequency": null,
"rooms": 2,
"baths": 2,
"area": 100.0,
"areaUnit": "sqm",
"furnishingStatus": "unfurnished",
"completionStatus": "completed",
"country": "UAE",
"city": "Dubai",
"neighbourhood": "Sample Community",
"building": "Sample Tower",
"latitude": 25.0000,
"longitude": 55.0000,
"isVerified": true,
"verificationStatus": "verified",
"verifiedAt": 1700000000,
"trucheckedAt": 1700000000,
"agentName": "Agent Name",
"agentExternalID": "0000000",
"phoneMobile": "+971500000000",
"phonePhone": "+97140000000",
"phoneWhatsapp": "971500000000",
"phoneProxy": "+97140000000",
"agencyName": "Sample Agency",
"agencyExternalID": "0000",
"agencySlug": "sample-agency-0000",
"permitNumber": "00000000000",
"referenceNumber": "REF-0001",
"images": [
"https://images.bayut.com/thumbnails/000000000-800x600.jpeg"
],
"imageCount": 10,
"panoramaCount": 0,
"videoCount": 0,
"amenities": [
{
"group": "Features",
"items": [
{ "slug": "balcony-or-terrace", "text": "Balcony or Terrace", "value": null },
{ "slug": "parking-spaces", "text": "Parking Spaces", "value": "1" }
]
}
],
"amenitiesFlat": ["balcony-or-terrace", "parking-spaces", "centrally-air-conditioned"],
"description": "Full seller description text appears here when fetchDetails=true.",
"createdAt": 1700000000,
"updatedAt": 1700000000,
"scrapedAt": "2026-01-01T00:00:00.000Z"
}

Plan Requirement

Residential proxy access is strongly recommended. The actor will warn and fall back to a backup datacenter pool if your residential pool is unavailable, but first-attempt success on residential is far more reliable.

  • Recommended (Apify Starter or above): Use Apify residential with country: "AE". This is the default.
  • Free plan: Apify Free does NOT include residential. Bring your own residential proxy URLs (Bright Data, Oxylabs, SmartProxy, IPRoyal) via the proxy field's "Custom proxy URLs" option.
  • Custom (BYO): A non-residential pool may produce empty pages. The actor warns up front and still tries - residential is cheaper end-to-end.