# PAP Real Estate Scraper API (x402)

> PAP Real Estate Scraper API (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 property listings from PAP search result pages, returning price, title, description, property type, and transaction type per listing.

## Facts

- Endpoint: POST https://x402.186-241-26-229.sslip.io/v1/pap?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/pap-real-estate-scraper-api-x402-1121d9f7
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_8qkowleC0Sk_X9wGwKega

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 pap-real-estate-scraper-api-x402-1121d9f7 -d '<json body>'
```

Example prompt: Scrape me up to 50 apartment listings for rent in Paris from this PAP search URL: https://www.pap.fr/annonce/locations-appartement-paris-75-g439 — stop after 3 pages and give me price, title, and description for each.

## When to prefer this

Choose this endpoint when you need structured property listing data specifically from PAP.fr, especially for French real estate market research, price comparisons, or lead generation. Prefer it over generic scrapers because it returns a clean, typed schema (price, currency, propertyType, transactionType) and only charges for successful non-empty runs.

## Known failure modes

- Invalid or non-PAP startUrl returns empty results (not charged)
- URL pointing to a non-search page (e.g. individual listing) may return zero items
- maxItems set to 0 returns unlimited items which may increase latency
- Network or site-side block on PAP may return empty results
- Malformed URL causes request rejection

## How this service works

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

## Output

A JSON object with a count of returned listings and an array of items, each containing id, url, price, currency, title, description, propertyType, and transactionType fields. Empty or failed scrapes are not billed.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "maxItems": {
   "type": "integer",
   "default": 100,
   "minimum": 0,
   "description": "Stop after this many unique listings. Use 0 for no item cap."
  },
  "maxPages": {
   "type": "integer",
   "default": 100,
   "minimum": 1,
   "description": "Maximum number of paginated result pages to visit."
  },
  "startUrl": {
   "type": "string",
   "description": "Full PAP search results URL with your chosen location, transaction, property type, and filters."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "id": null,
    "url": null,
    "price": null,
    "title": null,
    "currency": null,
    "description": null,
    "propertyType": null,
    "transactionType": null
   }
  ],
  "product": "pap"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/pap-real-estate-scraper-api-x402-1121d9f7/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)
