---
title: "Queue Live Scrape"
method: POST
path: "/api/v1/rea-live/search"
tags: ["rea-live"]
---

# Queue Live Scrape

`POST /api/v1/rea-live/search`

## Request

- Base URL: `https://api.casaintelligence.com.au` (the document declares no server; this is the origin it was published from)
- URL: `https://api.casaintelligence.com.au/api/v1/rea-live/search`
- Auth: API key in header `X-API-Key`

Queue a live REA scrape for a suburb.

Returns immediately with a job_id. The actual Playwright (or
ScrapFly cascade) scrape runs in the background and typically
completes in 45-90s. Poll via GET /rea-live/search/{job_id}.

If the same suburb was scraped in the last 30 minutes, the existing
job's result is returned (no re-scrape). If 3+ jobs are already in
flight, a rate_limited response is returned — retry after 60s.

## Request body

- ScrapeRequest: Inputs accepted by POST /rea-live/search. Mirrors search_rea_live's tool input schema so the underlying function is called untouched.
  - `suburb` string, required: Suburb to scrape, e.g. 'Coorparoo' or 'Mooloolaba'.
  - `postcode` string, nullable: Optional postcode; auto-resolved from ci_properties if omitted.
  - `max_price` integer, nullable: Optional max listing price in AUD.
  - `min_lot_m2` integer, nullable: Optional minimum lot area in m².

## Response `200`

Successful Response

- ScrapeQueuedResponse: Response shape for POST /rea-live/search. Note: `job_id` is OPTIONAL because the search_rea_live tool returns `existing_job_id` (no `job_id`) when a dedup hit occurs — same suburb scraped within the last 30 minutes reuses the prior job. Without making job_id optional, the dedup path 422s with "ValidationError: job_id Field required" — confirmed in prod 2026-05-23. Callers should check `existing_job_id` when `job_id` is absent.
  - `job_id` string, nullable
  - `existing_job_id` string, nullable
  - `status` string, nullable
  - `suburb` string, required
  - `postcode` string, nullable
  - `lga` string, nullable
  - `rea_search_url` string, nullable
  - `expected_duration_s` integer, nullable
  - `deduped` boolean, nullable
  - `rate_limited` boolean, nullable
  - `reason` string, nullable
  - `message` string, nullable

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/casaintelligence/apis/casa-intelligence-engine.md) · [All operations](https://skmtc.dev/casaintelligence/apis/casa-intelligence-engine/llms.txt) · [OpenAPI document](https://skmtc.dev/casaintelligence/apis/casa-intelligence-engine/revisions/71d711039de0?raw)
