# CrowdPull Zillow Listings Scraper

> CrowdPull Zillow Listings Scraper is a paid API for AI agents from crowdpull.click, paid per call via x402, $0.05/call, status unknown (last checked 2026-09-14).

Scrapes Zillow real estate listings by location, search query, or URL with optional filters for price, beds, baths, and listing type

## Facts

- Endpoint: POST https://crowdpull.click/api/actors/zillow-listings-scraper/call
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/crowdpull-zillow-listings-scraper-b98b3c23
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_l7MVB1Pgd80fYLx_kTj-3

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 crowdpull-zillow-listings-scraper-b98b3c23 -d '<json body>'
```

Example prompt: Pull up to 50 for-sale Zillow listings in Austin, TX with at least 3 beds, 2 baths, and a price between $300,000 and $700,000, and include the full listing details.

## When to prefer this

Use this endpoint when you need structured Zillow real estate listing data — for sale, for rent, or sold — filtered by location, price, beds, and baths, and you want a managed scraping job with a paid-per-call model rather than building and maintaining your own scraper.

## Known failure modes

- Invalid or unsupported Zillow URL returns an error or empty result set
- Location string not recognized by Zillow returns no listings
- maxItems/maxResults exceeding 250 is capped at 250
- Job times out if waitForFinishSeconds is too low for large result sets
- Payment failure (402) if USDC balance is insufficient
- Zillow anti-scraping measures may cause empty or partial results

## How this service works

CrowdPull turns public web pages into useful datasets for marketplaces, housing, reviews, jobs, social posts, drug prices, video, and public records.

## Output

Returns a job token and job object containing a job ID, status, and optional result set ID. The agent polls or retrieves results using the token/result set ID once the scraping job completes. Results contain structured Zillow listing data such as price, address, beds, baths, listing type, and more.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "required": [],
   "properties": {
    "url": {
     "type": "string",
     "description": "Single public URL accepted by the selected source."
    },
    "mode": {
     "enum": [
      "search",
      "url",
      "lookup"
     ],
     "type": "string",
     "default": "search"
    },
    "urls": {
     "type": "array",
     "items": {
      "type": "string"
     },
     "description": "Public URLs accepted by the selected source."
    },
    "query": {
     "type": "string",
     "description": "Search query or keyword."
    },
    "bedsMin": {
     "type": "integer",
     "minimum": 0
    },
    "bathsMin": {
     "type": "integer",
     "minimum": 0
    },
    "location": {
     "type": "string",
     "description": "City, ZIP, state, neighborhood, or source-supported location."
    },
    "maxItems": {
     "type": "integer",
     "default": 25,
     "maximum": 250,
     "minimum": 1
    },
    "priceMax": {
     "type": "integer",
     "minimum": 0
    },
    "priceMin": {
     "type": "integer",
     "minimum": 0
    },
    "startUrls": {
     "type": "array",
     "items": {
      "type": "string"
     },
     "description": "Public source URLs to collect from."
    },
    "maxResults": {
     "type": "integer",
     "default": 25,
     "maximum": 250,
     "minimum": 1
    },
    "searchUrls": {
     "type": "array",
     "items": {
      "type": "string"
     },
     "description": "Zillow search URLs. Required in URL mode. CrowdPull also accepts startUrls or urls and maps them to this field."
    },
    "listingType": {
     "type": "string",
     "description": "for_sale, for_rent, sold, or another source-supported listing type."
    },
    "maxListings": {
     "type": "integer",
     "default": 25,
     "maximum": 250,
     "minimum": 1
    },
    "searchQuery": {
     "type": "string",
     "description": "Search query or keyword."
    },
    "includeDetails": {
     "type": "boolean",
     "default": false
    }
   },
   "description": "Zillow Listings Scraper input. Pass the same public URLs, search terms, filters, and limits you would use on the source page. Extra source-specific fields are forwarded to the runner.",
   "additionalProperties": true
  },
  "options": {
   "type": "object",
   "properties": {
    "build": {
     "type": "string",
     "maxLength": 100,
     "minLength": 1
    },
    "memory": {
     "type": "integer",
     "maximum": 8192,
     "mini
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "type": "object",
  "required": [
   "token",
   "job"
  ],
  "properties": {
   "job": {
    "type": "object",
    "required": [
     "id",
     "status"
    ],
    "properties": {
     "id": {
      "type": "string"
     },
     "status": {
      "type": "string"
     },
     "resultSetId": {
      "type": "string"
     }
    },
    "additionalProperties": true
   },
   "token": {
    "type": "string"
   }
  },
  "additionalProperties": false
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/crowdpull-zillow-listings-scraper-b98b3c23/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from crowdpull.click](https://www.zero.xyz/host/crowdpull.click/llms.txt)
