Bayut Dubai $0.8π° URL Search | Location Filters | Rich Output
Pricing
from $0.80 / 1,000 results
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
Maintained by CommunityActor stats
0
Bookmarked
17
Total users
6
Monthly active users
2 days ago
Last modified
Categories
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.
| Field | Example |
|---|---|
externalID | 00000001 |
url | https://www.bayut.com/property/details-00000001.html |
purpose | for-sale / to-rent |
propertyType | property / apartments / villas / townhouses / β¦ |
title | Sample Listing Title |
titleArabic | <Arabic title placeholder> |
price (AED) | 1000000 |
currency | AED |
rentFrequency | yearly / monthly / weekly / daily (rent only) |
rooms, baths | 2, 2 |
area, areaUnit | 100.0, sqm |
furnishingStatus | furnished / unfurnished / partly-furnished |
completionStatus | completed / off-plan |
country, city | UAE, Dubai |
neighbourhood | Sample Community |
building | Sample Tower |
latitude, longitude | 25.0000, 55.0000 |
isVerified | true (TruCheck verified) |
verifiedAt, trucheckedAt | Unix timestamps |
agentName, agentExternalID | Agent Name, 0000000 |
phoneMobile, phonePhone | +971500000000, +97140000000 |
phoneWhatsapp, phoneProxy | 971500000000, +97140000000 |
agencyName, agencyExternalID | Sample Agency, 0000 |
agencyLogo | https://bayut-production.s3.eu-central-1.amazonaws.com/image/... |
permitNumber | 00000000000 (Trakheesi) |
referenceNumber | REF-0001 |
images[] | Full gallery, high-res CDN URLs |
amenities[] | Grouped by category (Features, Building, Health & Fitness, Recreation & Family, β¦) |
description | Full seller description (when fetchDetails=true) |
paymentPlans[] | For off-plan listings |
createdAt, updatedAt, reactivatedAt | Unix timestamps |
scrapedAt | ISO 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
| Parameter | Type | Default | Description |
|---|---|---|---|
mode | string | search | search (use filters) or url (paste URLs) |
locations | string[] | ["dubai"] | City / area slugs (search mode). Examples: dubai, abu-dhabi, dubai/dubai-marina. |
urls | string[] | - | Bayut search URLs (URL mode). Multiple URLs supported with forward pagination per URL. |
purpose | string | for-sale | for-sale or to-rent |
propertyType | string | property | property (any), apartments, villas, townhouses, penthouses, hotel-apartments, compounds, duplex, land, full-floors, half-floors, whole-buildings, bulk-units, commercial |
minPrice, maxPrice | int | - | Price range in AED |
minBedrooms, maxBedrooms | int | - | Bedroom range (0 = studio) |
minArea, maxArea | int | - | Area range in square feet |
furnishing | string | any | any, furnished, unfurnished |
completionStatus | string | any | any, completed, off-plan |
rentFrequency | string | any | any, yearly, monthly, weekly, daily (rent only) |
verifiedOnly | boolean | false | Only TruCheck-verified listings |
sortBy | string | popular | popular, newest, oldest, price-asc, price-desc, verified-score-desc |
maxPages | int | 1 | Pages to walk per URL / location (~24 listings per page) |
maxListings | int | 0 | Hard cap across the whole run (0 = unlimited) |
fetchDetails | bool | true | Adds description, amenities, full gallery, permit, payment plans |
proxy | object | Apify residential AE | UAE 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.
- Authorize a connector once under Apify β Settings β Integrations (Notion, Linear, Airtable, or Apify).
- Select it in the "Pipe results into your apps" input field. (If the picker is empty, you haven't authorized a connector yet.)
- For Notion, also set
notionParentPageUrlto 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.