---
title: "IGAC Blocks Search"
method: POST
path: "/co/igac/blocks-search/v1"
tags: ["Colombia", "IGAC"]
---

# IGAC Blocks Search

`POST /co/igac/blocks-search/v1`

## Request

- Base URL: `https://api.croma.run`
- URL: `https://api.croma.run/co/igac/blocks-search/v1`
- Auth: HTTP bearer

List the urban blocks (manzanas) of a municipality in Colombia's national cadastre, each with its 17-digit code, neighbourhood and GeoJSON polygon in WGS84. About 172,000 blocks. Served by Croma.

**Dataset endpoint**: answers from the whole source in milliseconds and carries `as_of`.

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `municipality_code` string, required: Five-digit DANE code of the municipality, e.g. `17013` for Aguadas or `52001` for Pasto.
  - `page` integer: 1-based page number for paginated results.
  - `per_page` integer: Results per page (1-50); every result carries its geometry.

## Response `200`

Successful response

- IgacBlocksSearchResponse
  - `data` IgacBlocksSearchData, required
    - `as_of` string, nullable, required: How current the data in this response is.
    - `municipality_code` string, required
    - `total` number, required: Matches, counted up to 1000.
    - `total_is_exact` boolean, required: False when more than 1000 match: `total` is then 1000, and the pages go on.
    - `page` number, required
    - `per_page` number, required
    - `total_pages` number, required: Pages over `total`; there are more when `total_is_exact` is false.
    - `count` number, required
    - `results` object[], required
      - `code` string, required: The 17-digit manzana code.
      - `neighborhood_code` string, nullable, required
      - `previous_code` string, nullable, required
      - `department_code` string, required
      - `municipality_code` string, required
      - `part_count` number, required
      - `latitude` number, nullable, required
      - `longitude` number, nullable, required
      - `geometry` object, nullable, required: The feature's geometry as GeoJSON in WGS84, exactly as IGAC draws it; referential, it does not certify boundaries.
        - `type` string, required: `Polygon`, `MultiPolygon`, `LineString`, `MultiLineString` or `Point`.
        - `coordinates` unknown, required
      - `geometry_url` string, nullable, required: Set when the geometry is too large to carry inline (a rural zone can run to tens of MB): the same GeoJSON geometry, kept by us, and `geometry` is null.

## Other responses

- `400`: Invalid request body
- `401`: Missing or invalid API key
- `429`: Rate limit exceeded
- `500`: Internal error
- `502`: Upstream source returned an error

---

[API](https://skmtc.dev/usecroma/apis/croma-marketplace-api.md) · [All operations](https://skmtc.dev/usecroma/apis/croma-marketplace-api/llms.txt) · [OpenAPI document](https://skmtc.dev/usecroma/apis/croma-marketplace-api/revisions/df016cdb29d7?raw)
