# Commonfloor — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search and browse property listings, projects, and real estate market trends from CommonFloor with access to detailed property information, amenities, location data, and agent contacts. Discover properties across multiple cities, compare market insights, and get comprehensive project details to help with your property search or investment decisions.

**Category:** Real Estate | **Website:** [commonfloor.com/](https://commonfloor.com/) | **Docs:** [parse.bot/marketplace/07d1e7a7-8f93-471c-b558-9c4e0b4305bb/commonfloor-com-api](https://parse.bot/marketplace/07d1e7a7-8f93-471c-b558-9c4e0b4305bb/commonfloor-com-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_agent_contact_details

Get basic agent or broker contact info for a property listing. Returns the contact person name and type. Phone number is gated behind authentication and not available.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `listing_id` | string | Yes | The CF listing ID (e.g. 'fqitouldjwc63mjf'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/get_agent_contact_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"listing_id":"<string>"}'
```

### get_cities_list

Get list of supported cities on CommonFloor. Returns a static list of city names that can be used as the city parameter in search endpoints.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/get_cities_list \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_market_trends

Get market price trends for a property or project. Returns sell and rent trend data for the entity's locality with historical price-per-sqft values and rental rates by BHK type.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `entity_id` | string | Yes | ID of the entity — a CF listing ID (e.g. 'fqitouldjwc63mjf') for page_type 'listing', or a CF project ID (e.g. 'qtvozs') for page_type 'project'. |
| `page_type` | string | No | Type of entity: 'listing' or 'project'. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/get_market_trends \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"entity_id":"<string>","page_type":"<string>"}'
```

### get_project_details

Get detailed information about a specific real estate project including builder info, pricing, RERA numbers, area details, and completion dates.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `project_id` | string | Yes | CF project ID (e.g. 'qtvozs'). Can be found in search_projects results as cfId. |
| `slug` | string | Yes | Project URL slug (e.g. 'assetz-22-crest-bangalore'). Can be derived from cfProjectUrl in search_projects results. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/get_project_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"project_id":"<string>","slug":"<string>"}'
```

### get_property_amenities

Get the list of amenities for a property listing. Parses amenity names from the listing page. Not all listings have amenities populated; some may return an empty array.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `listing_id` | string | Yes | The CF listing ID (e.g. 'fqitouldjwc63mjf'). |
| `slug` | string | No | URL slug of the listing. If omitted, defaults to 'property'. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/get_property_amenities \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"listing_id":"<string>","slug":"<string>"}'
```

### get_property_details

Get comprehensive details for a specific property listing including broker info, images, and similar listings. Returns full property data with nested property info containing price, bedrooms, carpet area, city, locality, and project association.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `listing_id` | string | Yes | The CF listing ID (e.g. 'fqitouldjwc63mjf'). Can be found in search_properties results as cfListingId. |
| `slug` | string | No | URL slug of the listing. If omitted, defaults to 'property'. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/get_property_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"listing_id":"<string>","slug":"<string>"}'
```

### get_property_location_info

Get nearby Points of Interest (POIs) including schools, hospitals, tech parks, metro stations, shopping malls, railway stations, and professional colleges for a project or listing. Each POI includes name, travel distance in km, and travel time in seconds.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `entity_id` | string | Yes | Numeric project ID (e.g. '2828'). Can be found in property details under qaAnalyticsCf.project_id. |
| `entity_type` | string | No | Entity type: 'project' or 'listing'. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/get_property_location_info \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"entity_id":"<string>","entity_type":"<string>"}'
```

### search_projects

Search for real estate projects in a city. Returns paginated results with project summaries including price range, builder info, and locality. Paginates via integer page counter.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `city` | string | No | City name. |
| `page` | integer | No | Page number for pagination. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/search_projects \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"city":"<string>","page":"<integer>"}'
```

### search_properties

Search for property listings (buy/rent) in a city with optional filters. Returns paginated results with listing summaries including price, BHK, area, and locality. The bhk filter is a preference hint that may return mixed BHK values from the upstream. Paginates via integer page counter with 30 results per page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `bhk` | string | No | Number of bedrooms to filter by (e.g. '2', '3', '4'). Acts as a preference hint; results may include other BHK types. |
| `budget_max` | integer | No | Maximum budget in INR. |
| `budget_min` | integer | No | Minimum budget in INR. |
| `city` | string | No | City name. |
| `listing_type` | string | No | Type of listing: 'sale' or 'rent'. |
| `locality` | string | No | Internal area/locality ID filter (e.g. 'xi23fd' for Yelahanka). Uses the site's internal locality IDs which can be found in search results as area_id fields. |
| `page` | integer | No | Page number for pagination. |
| `property_type` | string | No | Property type filter (e.g. 'Apartment', 'Villa', 'Plot'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-commonfloor-com-api-07d1e7a7/search_properties \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"bhk":"<string>","budget_max":"<integer>","budget_min":"<integer>","city":"<string>","listing_type":"<string>","locality":"<string>","page":"<integer>","property_type":"<string>"}'
```
