---
title: "Desglose geográfico de una elección"
method: GET
path: "/v1/electoral/desglose"
tags: ["Electoral"]
---

# Desglose geográfico de una elección

`GET /v1/electoral/desglose`

## Request

- Base URL: `https://api.alfil.co`
- URL: `https://api.alfil.co/v1/electoral/desglose`
- Auth: OAuth 2 (authorization code, authorization URL `https://api.alfil.co/oauth/authorize`, token URL `https://api.alfil.co/oauth/token`, scopes: `buscar:read`)

Votos totales (o de un candidato) por cada hijo geográfico del ámbito consultado (dept→mun→zona/puesto→mesa).

## Query parameters

- `eleccion` string, required
- `departamento` string
- `municipio` string
- `zona` string
- `localidad` string
- `candidato` string
- `orden` 'votos_desc' | 'votos_asc'

## Response `200`

Desglose por hijo geográfico

- ElectoralDesglose
  - `eleccion` object, required
    - `codigo` string, required
    - `nombre` string, required
  - `ambito` AmbitoGeografico, required: Ámbito consultado, ecoado con código DIVIPOLA + nombre
    - `nivel` 'nacional' | 'departamento' | 'municipio' | 'zona' | 'puesto' | 'mesa', required
    - `departamento` object
      - `divipola` string, required
      - `nombre` string, required
    - `municipio` object
      - `divipola` string, required
      - `nombre` string, required
    - `zona` object: Zona/localidad; `divipola` es el id interno, NO un código DIVIPOLA oficial
      - `divipola` string, required
      - `nombre` string, required
    - `puesto` object: Puesto de votación; `divipola` es el id interno, NO un código DIVIPOLA oficial
      - `divipola` string, required
      - `nombre` string, required
  - `candidato` object: Presente solo si se filtró por candidato — "votos" en cada hijo son los de este candidato
    - `cedula` string, required
    - `nombre` string, required
  - `orden` 'votos_desc' | 'votos_asc', required
  - `hijos` ElectoralDesgloseHijo[], required
    - `nombre` string, required
    - `codigo` string, nullable, required: Código interno del hijo (no siempre un código DIVIPOLA oficial)
    - `nivel` 'departamento' | 'municipio' | 'zona' | 'puesto' | 'mesa', required: Nivel geográfico del hijo — lo determina el RPC según qué tan profundo esté el ámbito consultado
    - `votos` string, required: Votos (bigint como string)
    - `tiene_hijos` boolean, required: Si este hijo admite más drill-down (otra llamada más profunda)
  - `fuente` Fuente, required: Proveniencia: fuente oficial y fecha de corte (atribución Ley 1712)
    - `nombre` string, required: Fuente oficial del dato
    - `url` string: URL de la fuente oficial
    - `corte` string, required: Fecha de corte del dato (ISO 8601)
    - `licencia` string: Licencia de la fuente

## Other responses

- `401`: Token faltante, expirado o de emisor inesperado
- `403`: Scope insuficiente
- `429`: Cuota agotada o rate limit

---

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