# Rightmove Property Listings Scraper

> Rightmove Property Listings Scraper is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Scrapes structured property listing data from Rightmove (UK) including sale, rent, and commercial properties, returning addresses, prices, property types, and optional full details.

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/rightmove?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/rightmove-property-listings-scraper-ec445b8f
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_7N3QwT4irD0uqw6RtU6Gd

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 rightmove-property-listings-scraper-ec445b8f -d '<json body>'
```

Example prompt: Search Rightmove for 3-bedroom houses for sale in Manchester priced between £200,000 and £400,000, sorted by newest first, and give me up to 50 results with full property details including floor plans and descriptions.

## When to prefer this

Choose this endpoint when you need structured, machine-readable UK property listing data from Rightmove without maintaining your own scraper. It supports both residential and commercial, sale and rental searches, with fine-grained filters for price, bedrooms, property type, and location radius. Prefer it over generic web scraping when you want reliable schema-consistent output and pay only on successful non-empty runs.

## Known failure modes

- Empty results if search filters are too restrictive or no matching listings exist (not charged)
- Rightmove URL structure changes may break scraping silently
- Truncated results if maxItems cap is hit before all listings are fetched
- Invalid or malformed startUrls may return errors or empty sets
- Commercial search modes may return fewer results than residential due to lower listing volume

## 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 matching properties and an array of items, each containing the property address, channel, search URL, property ID, property URL, property type, property phrase, and transaction type. With moreDetails enabled, also includes full description, floor plans, energy performance chart, brochure links, and extended agent contact details.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "maxItems": {
   "type": "integer",
   "default": 100,
   "minimum": 0,
   "description": "Stop after this many unique properties across all searches. Zero removes the cap."
  },
  "startUrls": {
   "type": "array",
   "description": "Search URLs or direct property URLs. When provided, these take precedence over filters."
  },
  "searchMode": {
   "enum": [
    "propertySale",
    "propertyRent",
    "commercialSale",
    "commercialRent"
   ],
   "type": "string",
   "default": "propertySale",
   "description": "Type of public property search."
  },
  "searchSort": {
   "enum": [
    "6",
    "2"
   ],
   "type": "string",
   "default": "6",
   "description": "Sort order: newest first or price ascending."
  },
  "moreDetails": {
   "type": "boolean",
   "default": false,
   "description": "Visit each property page for full description, floor plans, energy chart, brochure, and extra agent details."
  },
  "searchRadius": {
   "type": "string",
   "default": "0.0",
   "description": "Distance around the location. Use 0.0 for the exact area."
  },
  "searchDontShow": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Optional excluded listing categories."
  },
  "searchKeywords": {
   "type": "string",
   "description": "Words to filter the search where supported."
  },
  "searchMaxPrice": {
   "type": "integer",
   "minimum": 0,
   "description": "Highest price in pounds. A bounded range can be split to pass the per-search result cap."
  },
  "searchMinPrice": {
   "type": "integer",
   "minimum": 0,
   "description": "Lowest price in pounds."
  },
  "searchMustHave": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Optional required feature values used in search."
  },
  "searchIncludeSSTC": {
   "type": "boolean",
   "default": false,
   "description": "Include listings marked sold subject to contract in sale searches."
  },
  "searchMaxBedrooms": {
   "type": "integer",
   "minimum": 0,
   "description": "Maximum number of bedrooms for residential listings."
  },
  "searchMinBedrooms": {
   "type": "integer",
   "minimum": 0,
   "description": "Minimum number of bedrooms for residential listings."
  },
  "searchPropertyTypes": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Optional property type values used in search."
  },
  "searchIncludeLetAgreed": {
   "type": "boolean",
   "default": false,
   "description": "Inc
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "address": null,
    "channel": null,
    "searchUrl": null,
    "propertyId": null,
    "propertyUrl": null,
    "propertyType": null,
    "propertyPhrase": null,
    "transactionType": null
   }
  ],
  "product": "rightmove"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/rightmove-property-listings-scraper-ec445b8f/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrapeforagents.tech](https://www.zero.xyz/host/api.scrapeforagents.tech/llms.txt)
