Com APIfincaraiz.com.co ↗
Access Colombia's largest property portal via API. Search listings, retrieve agency profiles, and fetch real estate news from fincaraiz.com.co.
What is the Com API?
The Fincaraiz API exposes 6 endpoints covering property listings, agency directories, and real estate news from Colombia's largest property portal. The search_listings endpoint accepts filters for location, operation type, estrato level, price range, and area in m², returning paginated results with full listing details including price in COP, owner info, images, and technical specifications. A dedicated get_listing_detail endpoint retrieves the complete data for a single property by slug and ID.
curl -X GET 'https://api.parse.bot/scraper/579881f5-2b1d-44d1-b93b-70924076950c/search_listings?page=1&estrato=1&location=colombia&operation=venta&property_type=finca-raiz' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace fincaraiz-com-co-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Fincaraiz SDK — property search, detail lookup, agencies, news."""
from parse_apis.fincaraiz_api import Fincaraiz, Operation, Location, ListingNotFound
client = Fincaraiz()
# Search apartments for sale in Bogota, capped at 5 results
for listing in client.listings.search(
location=Location.BOGOTA_DC,
operation=Operation.VENTA,
property_type="apartamentos",
limit=5,
):
print(listing.title, listing.price.amount, listing.m2, listing.bedrooms)
# Drill into a listing's full details (technical sheet, facilities, etc.)
first_listing = client.listings.search(operation=Operation.VENTA, limit=1).first()
if first_listing:
detail = first_listing.details()
print(detail.property.title, detail.property.price.amount)
for spec in detail.technical_sheet[:3]:
print(f" {spec.text}: {spec.value}")
# Look up a listing by code with typed error handling
if first_listing:
try:
found = client.listings.get_by_code(code=first_listing.code)
print(found.title, found.address)
except ListingNotFound as exc:
print(f"Listing not found: {exc}")
# List available property types
for pt in client.propertytypes.list(limit=5):
print(pt.slug, pt.name)
# Browse featured agencies
for agency in client.agencies.list(limit=3):
print(agency.name, agency.type, agency.address)
# Latest news articles
for article in client.articles.list(limit=3):
print(article.title, article.date, article.link)
print("exercised: listings.search / listing.details / listings.get_by_code / propertytypes.list / agencies.list / articles.list")
Search for property listings on fincaraiz.com.co with filters for location, operation type, property type, price range, area, and estrato. Returns paginated results ordered by relevance. Each listing includes full details: price, location, owner, images, facilities, and technical specs.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| estrato | integer | Estrato level (1-6). |
| location | string | Location slug (e.g., 'bogota-dc', 'medellin', 'colombia'). |
| max_area | integer | Maximum area in m². |
| min_area | integer | Minimum area in m². |
| max_price | integer | Maximum price in COP. |
| min_price | integer | Minimum price in COP. |
| operation | string | Operation type. |
| property_type | string | Property type slug (e.g., 'apartamentos', 'casas', 'finca-raiz'). Use list_property_types endpoint to get available slugs. |
{
"type": "object",
"fields": {
"page": "integer, current page number",
"total": "integer, total number of matching listings",
"params": "object containing parsed search parameters",
"listings": "array of property listing objects with full details"
},
"sample": {
"data": {
"page": 1,
"total": 0,
"params": {},
"listings": [
{
"id": 193577571,
"m2": 96.97,
"img": "https://cdn2.infocasas.com.uy/repo/img/example.jpg",
"code": "193577571",
"link": "/apartamento-en-venta-en-santa-barbara-bogota/193577571",
"price": {
"amount": 570000000,
"currency": {
"id": 4,
"name": "$"
}
},
"title": "Apartamento en Venta en Santa Barbara, Bogotá",
"garage": 2,
"address": "Avenida Calle 116 # 9-24",
"stratum": 6,
"bedrooms": 3,
"latitude": 4.6947753,
"bathrooms": 3,
"longitude": -74.0354101,
"created_at": "2026-03-29",
"updated_at": "2026-06-10",
"description": "Venta Apartamento en Santa Bárbara..."
}
]
},
"status": "success"
}
}About the Com API
Search and Filter Listings
The search_listings endpoint is the primary entry point for querying the Fincaraiz catalog. Key parameters include location (a slug such as bogota-dc or medellin), operation (e.g., sale or rent), estrato (1–6, reflecting Colombia's socioeconomic zoning system), and price bounds via min_price / max_price in COP. Area filtering uses min_area and max_area in m². Responses include a total count of matching listings alongside a paginated listings array, where each object carries price, address, owner details, image URLs, and facility data.
Individual Listing Details
Call get_listing_detail with both a slug_or_url and a property_id — both values are available from search_listings results — to retrieve the full property record. The response surfaces a property object (title, address, price, owner, locations, images, facilities) and a technicalSheet array of key-value pairs covering specifications like built area, number of rooms, parking, and property age. The search_by_code endpoint provides an alternative lookup path using a listing's numeric code, returning core fields including price, title, and address.
Reference and Supporting Endpoints
list_property_types returns the full set of type slugs and display names used in search_listings filters — useful for building a dynamic filter UI without hardcoding values. list_inmobiliarias returns featured agency profiles including name, type, logo, and description, which can populate an agency directory or support lead-routing workflows. get_news_articles pulls from the Fincaraiz WordPress blog, delivering paginated posts (10 per page) with full HTML content, date, author, and category data.
The Com API is a managed, monitored endpoint for fincaraiz.com.co — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when fincaraiz.com.co changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official fincaraiz.com.co API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a cross-city rental comparison tool filtering by estrato, price range, and area across Bogotá, Medellín, and Cali.
- Aggregate property listings for a Colombia-focused real estate CRM, syncing owner contact info and images via
get_listing_detail. - Display a live agency directory by consuming
list_inmobiliariasto surface agency logos, descriptions, and contact details. - Implement a listing lookup widget using
search_by_codeso users can paste a Fincaraiz code and immediately see price and address. - Monitor new listings in a specific neighborhood by polling
search_listingswith a fixedlocationslug and tracking changes intotal. - Power a real estate content feed by paginating
get_news_articlesand republishing blog posts with author and category metadata. - Populate a property search filter menu dynamically using
list_property_typesto keep type slugs in sync with the source catalog.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Fincaraiz have an official public developer API?+
What does the `technicalSheet` field in `get_listing_detail` contain?+
field, value, and text keys. These represent structured property specifications such as built area, number of rooms, bathrooms, parking spaces, and property age — the same data shown in the listing's technical breakdown on the site.Does `search_listings` support filtering by property type (apartment, house, office, etc.)?+
search_listings inputs do not include a property_type parameter in the current spec, though list_property_types returns the available type slugs. You can fork this API on Parse and revise it to wire the property_type filter into search_listings.Does the API cover new construction projects (proyectos nuevos) or only existing listings?+
Is there a limit to how many listings `search_listings` returns per page, and can I retrieve a specific page?+
page parameter controls which page is returned. The total field in the response gives the overall match count so you can calculate how many pages exist. The number of listings per page is determined by the source and is not a configurable parameter in the current endpoint.