# Bayut Property Listings Scraper (x402)

> Bayut Property Listings Scraper (x402) is a paid API for AI agents from x402.186-241-26-229.sslip.io, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Scrapes structured real estate listings from Bayut (UAE property portal) with filters for location, price, bedrooms, area, and furnishing, billed per successful call.

## Facts

- Endpoint: POST https://x402.186-241-26-229.sslip.io/v1/bayut?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/bayut-property-listings-scraper-x402-308c2895
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_Axwk0asW3coHykpEL9EWc

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability bayut-property-listings-scraper-x402-308c2895 -d '<json body>'
```

Example prompt: Search Bayut for 2-bedroom furnished apartments to rent in Dubai Marina, priced between 80000 and 150000 AED, sorted by newest, and give me the top 20 listings with full details including amenities and descriptions.

## When to prefer this

Use this endpoint when you need structured property listing data from Bayut specifically — the dominant UAE/GCC real estate portal — with rich filter support for location, price, bedrooms, area, and furnishing. It is preferable over generic web scrapers because it returns clean, typed JSON rather than raw HTML, and only charges on successful non-empty runs. Best for UAE property research, investment analysis, or rental market monitoring in Arabic/Gulf markets where Bayut is the primary source.

## Known failure modes

- Empty results if location slug is invalid or misspelled — returns count 0 with no charge
- No charge on failed or empty runs, so a misconfigured filter (e.g. impossibly narrow price+area+bedroom combo) returns empty safely
- URL mode fails silently if provided Bayut URLs are expired or invalid
- Truncated results if maxListings is hit before all pages are fetched
- Rate limiting or Bayut anti-scraping measures could cause partial results

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

Returns a JSON object with a count of matched listings and an array of items, each containing listing ID, URL, price, title, purpose, property type, external ID, and Arabic title. With fetchDetails enabled, also includes description, amenities, and additional property attributes.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "mode": {
   "enum": [
    "search",
    "url"
   ],
   "type": "string",
   "default": "search",
   "description": "Choose location filters or provide existing search URLs."
  },
  "urls": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "One or more Bayut sale or rental search URLs. Used in URL mode."
  },
  "sortBy": {
   "enum": [
    "popular",
    "newest",
    "oldest",
    "price-asc",
    "price-desc",
    "verified-score-desc"
   ],
   "type": "string",
   "default": "popular",
   "description": "Search result ordering. Search mode only."
  },
  "maxArea": {
   "type": "integer",
   "minimum": 0,
   "description": "Maximum area in square feet. Search mode only."
  },
  "minArea": {
   "type": "integer",
   "minimum": 0,
   "description": "Minimum area in square feet. Search mode only."
  },
  "purpose": {
   "enum": [
    "for-sale",
    "to-rent"
   ],
   "type": "string",
   "default": "for-sale",
   "description": "Choose properties for sale or rent. Search mode only."
  },
  "maxPages": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Maximum search result pages per location or URL; zero follows pages until results end."
  },
  "maxPrice": {
   "type": "integer",
   "minimum": 0,
   "description": "Maximum price in AED. Search mode only."
  },
  "minPrice": {
   "type": "integer",
   "minimum": 0,
   "description": "Minimum price in AED. Search mode only."
  },
  "locations": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "City or area slugs, such as dubai or dubai/dubai-marina. Search mode only."
  },
  "furnishing": {
   "enum": [
    "any",
    "furnished",
    "unfurnished"
   ],
   "type": "string",
   "default": "any",
   "description": "Filter furnished or unfurnished homes. Search mode only."
  },
  "maxBedrooms": {
   "type": "integer",
   "minimum": 0,
   "description": "Maximum bedroom count. Search mode only."
  },
  "maxListings": {
   "type": "integer",
   "default": 20,
   "minimum": 0,
   "description": "Maximum total listings across all searches; zero removes this limit."
  },
  "minBedrooms": {
   "type": "integer",
   "minimum": 0,
   "description": "Minimum bedroom count; zero includes studios. Search mode only."
  },
  "fetchDetails": {
   "type": "boolean",
   "default": false,
   "description": "Open each listing to add description, amenities, complete photo gallery, floor plans, and paym
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "id": null,
    "url": null,
    "price": null,
    "title": null,
    "purpose": null,
    "externalID": null,
    "titleArabic": null,
    "propertyType": null
   }
  ],
  "product": "bayut"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/bayut-property-listings-scraper-x402-308c2895/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.186-241-26-229.sslip.io](https://www.zero.xyz/host/x402.186-241-26-229.sslip.io/llms.txt)
