> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usecroma.com/llms.txt
> Use this file to discover all available pages before exploring further.

# UPRA Rural Land Prices

> The commercial price of rural agricultural land in Colombia per hectare, zone by zone: about 179,000 zones in 18 departments from UPRA's land-market studies, searchable by municipality and price or found under a point.

The Unidad de Planificación Rural Agropecuaria (UPRA), the Ministry of Agriculture's planning unit, maps what agricultural land sells for across Colombia: department by department, it draws zones and gives each a commercial price range in pesos per hectare, from field interviews, market studies and offers. This source keeps that map whole, about 179,000 zones, each with its range, the year of the study, its standing in the land market, its area and its polygon.

The map covers 18 departments, wholly or in part: Antioquia, Arauca, Atlántico, Bolívar, Boyacá, Casanare, Cauca, Cesar, Córdoba, Cundinamarca, Huila, La Guajira, Meta, Nariño, Quindío, Sucre, Tolima and Vichada, each with the year of its study (2015 to 2023).

Search a municipality's or department's zones by price, or give a coordinate and get the zone that covers it.

## Search the zones

`POST /co/upra/land-prices-search/v1` <a className="dataset-pill" href="/datasets">Dataset</a>

The price zones of a municipality or a department, most expensive first, narrowed by price per hectare.

| Field | Type | Notes |
| - | - | - |
| `municipality_code` | string | Optional five-digit DANE code of the municipality, e.g. `73001` (Ibagué). One of `municipality_code` or `department_code` is required. |
| `department_code` | string | Optional two-digit DANE code of the department, e.g. `73` (Tolima) or `50` (Meta). |
| `min_price_per_hectare` | number | Optional: zones whose range starts at or above this price, pesos per hectare. Default `0`. |
| `max_price_per_hectare` | number | Optional: zones whose range ends at or below this price, pesos per hectare. Default `0`. |
| `page` | integer | 1-based page number. Default `1`. |
| `per_page` | integer | Results per page (1-50); every result carries its geometry. Default `20`. |

```bash theme={"dark"}
curl https://api.croma.run/co/upra/land-prices-search/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "municipality_code": "73001" }'
```

Returns `as_of`, the applied filters, `total` and `total_is_exact`, `page`, `per_page`, `total_pages`, `count` and `results[]`. Every zone carries `id`, `department_code`, `department`, `municipality_code`, `municipality`, `valuation_year` (the year of the department's study), `price_status` (`priced`; `excluded` for land outside the agricultural land market; `no_information`), `price_range` (UPRA's label, in millions of pesos per hectare), `exclusion` (why an excluded zone is out of the market, e.g. `Zonas urbanas`, `Resguardos indígenas constituidos`, `Parques Nacionales Naturales`), `price_code`, `min_price_cop_per_ha` and `max_price_cop_per_ha` (the range in pesos per hectare; the top range has no upper bound), `market_category` (`Incluida` or `Condicionada`), `area_ha`, `latitude`, `longitude` and `geometry` (GeoJSON in WGS84), or `geometry_url` when the polygon is too large to carry inline.

<Note>
  UPRA draws these ranges at 1:100,000 from market studies and interviews. They describe the rural land market of a zone; UPRA states they are not an appraisal of any one property nor a tax base, and they leave out land used for housing, industry or commerce.
</Note>

## The zone at a point

`POST /co/upra/land-price-by-point/v1` A coordinate in, the price per hectare of the rural zone that covers it out.

| Field | Type | Notes |
| - | - | - |
| `latitude` | number | **Required.** Latitude in decimal degrees (WGS84). |
| `longitude` | number | **Required.** Longitude in decimal degrees (WGS84), negative in Colombia. |

```bash theme={"dark"}
curl https://api.croma.run/co/upra/land-price-by-point/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "latitude": 4.3, "longitude": -75 }'
```

Returns `found`, `latitude`, `longitude` and `zone`, null when none covers the point. Every zone carries `id`, `department_code`, `department`, `municipality_code`, `municipality`, `valuation_year` (the year of the department's study), `price_status` (`priced`; `excluded` for land outside the agricultural land market; `no_information`), `price_range` (UPRA's label, in millions of pesos per hectare), `exclusion` (why an excluded zone is out of the market, e.g. `Zonas urbanas`, `Resguardos indígenas constituidos`, `Parques Nacionales Naturales`), `price_code`, `min_price_cop_per_ha` and `max_price_cop_per_ha` (the range in pesos per hectare; the top range has no upper bound), `market_category` (`Incluida` or `Condicionada`), `area_ha`, `latitude`, `longitude` and `geometry` (GeoJSON in WGS84), or `geometry_url` when the polygon is too large to carry inline.

<Note>
  UPRA draws these ranges at 1:100,000 from market studies and interviews. They describe the rural land market of a zone; UPRA states they are not an appraisal of any one property nor a tax base, and they leave out land used for housing, industry or commerce. The map covers 18 departments, wholly or in part: Antioquia, Arauca, Atlántico, Bolívar, Boyacá, Casanare, Cauca, Cesar, Córdoba, Cundinamarca, Huila, La Guajira, Meta, Nariño, Quindío, Sucre, Tolima and Vichada, each with the year of its study (2015 to 2023).
</Note>

<Card title="Full reference" icon="code" href="/api-reference/overview">
  Schemas, all response fields, and an interactive playground.
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.