# CrowdPull Apartments.com Rentals Scraper

> CrowdPull Apartments.com Rentals 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-16).

Scrapes rental listings from Apartments.com based on location, price range, bedroom count, and other filters, returning structured rental data.

## Facts

- Endpoint: POST https://crowdpull.click/api/actors/apartments-com-rentals-scraper/call
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-16
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/crowdpull-apartments-com-rentals-scraper-9b68bed9
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_FB8LeG_nzevv_NVrq6BTe

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-apartments-com-rentals-scraper-9b68bed9 -d '<json body>'
```

Example prompt: Pull me up to 50 rental listings from Apartments.com in Austin, TX — 2-bedroom units, pet-friendly, under $2,500/month.

## When to prefer this

Use this endpoint when you need structured rental listing data from Apartments.com specifically, including rent ranges, bedroom filters, and pet policies, and want a managed scraping job rather than building your own crawler. Prefer this over generic web scrapers when you need Apartments.com-specific search filters forwarded natively.

## Known failure modes

- Invalid or unsupported location returns no results
- Apartments.com blocks or rate-limits the scraper, returning an error or empty dataset
- maxItems/maxResults out of bounds returns a validation error
- Job times out before completion if waitForFinishSeconds is too low
- URL provided does not match Apartments.com domain, causing runner failure

## 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 ID with status. The job asynchronously collects rental listings from Apartments.com matching the specified filters, including apartment details such as rent, bedroom count, pet policy, and listing URLs. Results are retrievable via the resultSetId once the job completes.

## 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."
    },
    "urls": {
     "type": "array",
     "items": {
      "type": "string"
     },
     "description": "Public URLs accepted by the selected source."
    },
    "query": {
     "type": "string",
     "description": "Search query or keyword."
    },
    "scope": {
     "type": "string",
     "description": "Search scope such as city, state, neighborhood, or url when supported."
    },
    "maxRent": {
     "type": "integer",
     "minimum": 0
    },
    "minRent": {
     "type": "integer",
     "minimum": 0
    },
    "bedrooms": {
     "type": "string"
    },
    "location": {
     "type": "string",
     "description": "City, ZIP, state, neighborhood, or source-supported location."
    },
    "maxItems": {
     "type": "integer",
     "default": 25,
     "maximum": 250,
     "minimum": 1
    },
    "maxPages": {
     "type": "integer",
     "default": 3,
     "maximum": 10,
     "minimum": 1
    },
    "startUrls": {
     "type": "array",
     "items": {
      "type": "string"
     },
     "description": "Public source URLs to collect from."
    },
    "maxResults": {
     "type": "integer",
     "default": 25,
     "maximum": 250,
     "minimum": 1
    },
    "maxListings": {
     "type": "integer",
     "default": 25,
     "maximum": 250,
     "minimum": 1
    },
    "petFriendly": {
     "type": "boolean"
    },
    "searchQuery": {
     "type": "string",
     "description": "Search query or keyword."
    },
    "includeDetails": {
     "type": "boolean",
     "default": false
    }
   },
   "description": "Apartments.com Rentals 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,
     "minimum": 128
    },
    "waitForFinishSeconds": {
     "type": "integer",
     "default": 10,
     "maximum": 60,
     "minimum": 0
    }
   },
   "description": "Optional CrowdPull job options. CrowdPull caps each paid job so low-cost agent calls cannot accidentally start a large collection.",

… (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-apartments-com-rentals-scraper-9b68bed9/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)
