La infraestructura de datos de Polímetro
Accede a datos públicos de Colombia mediante una API sencilla, estructurada y reutilizable.
Inicio rápido

Base URL:

https://polimetro.org/api/v1
curl 'https://polimetro.org/api/v1/institutions?sector=Oficial'

La API responde JSON paginado con data, links y meta.

Construye sobre datos públicos de Colombia.
Datos listos para aplicaciones e inteligencia artificial

Los datos públicos de Colombia pueden ser difíciles de encontrar, interpretar y conectar. Polímetro los estructura y relaciona para que desarrolladores, investigadores y sistemas de IA puedan utilizarlos de forma más sencilla.

Estructurado

JSON limpio y consistente, paginado, con identificadores oficiales (NIT, SNIES, DANE).

Conectado

Todo enlazado por su geografía (DIVIPOLA): departamento y municipio como llave común.

Verificable

Cada dato conserva su fuente oficial para auditar y citar con confianza.

Recursos legibles por máquinas para agentes y herramientas de IA: la especificación OpenAPI describe todos los endpoints y /llms.txt resume los conjuntos de datos disponibles.

Autenticación

Todas las llamadas requieren una API key (incluido el plan gratis). Regístrate para obtener la tuya y envíala en el encabezado X-Api-Key:

curl -H 'X-Api-Key: pmk_xxx' 'https://polimetro.org/api/v1/people?department=Valle%20del%20Cauca'

Regístrate gratis y crea tu clave (el plan gratis la incluye).

Planes y límites
PlanPrecioSolicitudes/minSolicitudes/mes
Free Gratis 30 1,000
Basic $5/mes 60 10,000
Pro $10/mes 120 30,000
Business $20/mes 300 100,000

Mejora tu plan en Planes.

Endpoints
Directorio de políticos API
GET
/api/v1/people

Todos los políticos (filtros: q, position, selection_method[elected|appointed], department, municipality, party, status, active, year, term_start, term_end, from, to, per_page)

Solicitud
curl "https://polimetro.org/api/v1/people?department=Valle%20del%20Cauca&from=2024-01-01&to=2027-12-31"
Respuesta
{"data":[{"name":"Audry María Toro Echavarría","position":"councilor","party":"Partido de la Unión por la Gente","department":"Valle del Cauca","municipality":"Santiago de Cali","term_start":"2024-01-01","term_end":"2027-12-31"}],"links":{"first":"…","next":null},"meta":{"total":1,"per_page":25}}
GET
/api/v1/people/{slug}

Un político por slug

Solicitud
curl "https://polimetro.org/api/v1/people/audry-maria-toro-echavarria"
Respuesta
{"data":{"name":"Audry María Toro Echavarría","position":"councilor","position_label":"Concejal","party":"Partido de la Unión por la Gente","municipality":"Santiago de Cali"}}
GET
/api/v1/people/{slug}/bills

Leyes/proyectos de los que este político es autor

Solicitud
curl "https://polimetro.org/api/v1/people/nadia-blel-scaff/bills"
Respuesta
{"data":[{"slug":"ley-2620","title":"…","law_number":"2620","status":"approved","authors":[{"name":"NADIA BLEL SCAFF","matched":true}]}],"meta":{"total":1,"per_page":25}}
GET
/api/v1/people/{slug}/terms

Trayectoria política: periodos/cargos del político, cada uno con su partido en ese periodo

Solicitud
curl "https://polimetro.org/api/v1/people/carlos-edward-osorio-aguiar-3/terms"
Respuesta
{"data":[{"position":"representative","position_label":"Representante","period":"2018-2022","party":{"id":5,"name":"Partido Conservador","short_name":"Conservador"},"is_current":false}]}
GET
/api/v1/people/{id|slug}/parties

Movimiento de partidos del político a lo largo del tiempo (por id o slug). Devuelve la lista de partidos distintos, el número de cambios y el historial por periodo.

Solicitud
curl "https://polimetro.org/api/v1/people/carlos-edward-osorio-aguiar-3/parties"
Respuesta
{"data":{"politician":{"id":123,"name":"Carlos Edward Osorio Aguiar","slug":"carlos-edward-osorio-aguiar-3","current_party":{"id":5,"name":"Partido Conservador","short_name":"Conservador"}},"parties":[{"id":8,"name":"Partido de la U","short_name":"La U"},{"id":5,"name":"Partido Conservador","short_name":"Conservador"}],"party_changes":1,"history":[{"party":{"id":8,"name":"Partido de la U","short_name":"La U"},"position":"representative","period":"2014-2018","is_current":false},{"party":{"id":5,"name":"Partido Conservador","short_name":"Conservador"},"position":"representative","period":"2018-2022","is_current":true}]}}
GET
/api/v1/coverage/{position}

Cobertura política por periodo: departamentos/municipios SIN el cargo. position: representative|governor|deputy (depto) · mayor|councilor|corregidor (municipio). Filtros: period=YYYY-YYYY (o from/to), department, q

Solicitud
curl "https://polimetro.org/api/v1/coverage/councilor?period=2024-2027&department=76"
Respuesta
{"data":[{"id":900,"code":"76020","name":"Alcalá","department":"Valle del Cauca","department_code":"76"}],"coverage":{"position":"councilor","level":"municipality","period":"2024-2027","missing":1121,"total":1122,"covered":1},"meta":{"total":1121,"per_page":50}}
GET
/api/v1/senators

Senadores (igual: representatives, governors, mayors, deputies, councilors)

Solicitud
curl "https://polimetro.org/api/v1/senators?per_page=2"
Respuesta
{"data":[{"name":"…","position":"senator","position_label":"Senador"}],"meta":{"total":103,"per_page":2}}
GET
/api/v1/parties

Partidos con conteo de políticos

Solicitud
curl "https://polimetro.org/api/v1/parties"
Respuesta
{"data":[{"id":1,"name":"Partido Alianza Verde","short_name":null,"color":null,"politicians_count":12}],"meta":{"total":30}}
GET
/api/v1/positions

Cargos disponibles (valor, etiqueta, conteo)

Solicitud
curl "https://polimetro.org/api/v1/positions"
Respuesta
{"data":[{"value":"senator","label":"Senador","count":103},{"value":"mayor","label":"Alcalde","count":1103}]}
Candidatos API
GET
/api/v1/candidates

Candidatos electorales — SOLO los que aún no están vinculados a un político (una vez confirmado el vínculo, la persona se consulta en /people). Filtros: q, position, selection_method, department, municipality, region, party, coalition, election_type, year (o election_year), from, to, won, per_page. Geografía acepta nombre o código DIVIPOLA.

Solicitud
curl -H "X-Api-Key: pmk_xxx" "https://polimetro.org/api/v1/candidates?department=Antioquia&party=Partido%20Liberal"
Respuesta
{"data":[{"id":1204,"name":"María Fernanda Ríos","first_name":"María","first_surname":"Ríos","linked":false,"latest_position":"senator","latest_position_label":"Senador","latest_election_year":2026,"candidacies_count":1,"candidacies":[{"position":"senator","position_label":"Senador","election_year":2026,"election_type":"national","party":null,"party_name":"Partido X","coalition":null,"list_number":"5","department":null,"municipality":null,"won":null}]}],"links":{"first":"…","next":null},"meta":{"total":1,"per_page":25}}
GET
/api/v1/candidates/{id}

Un candidato por id (incluye todas sus candidaturas). Devuelve 404 si el candidato ya está vinculado a un político.

Solicitud
curl -H "X-Api-Key: pmk_xxx" "https://polimetro.org/api/v1/candidates/1204"
Respuesta
{"data":{"id":1204,"name":"María Fernanda Ríos","linked":false,"latest_position":"senator","latest_election_year":2026,"candidacies":[{"position":"senator","position_label":"Senador","election_year":2026,"party_name":"Partido X","list_number":"5","won":null}]}}
GET
/api/v1/candidates/{id}/terms

Candidaturas de un candidato: una entrada por elección/cargo al que aspiró.

Solicitud
curl -H "X-Api-Key: pmk_xxx" "https://polimetro.org/api/v1/candidates/1204/terms"
Respuesta
{"data":[{"position":"senator","position_label":"Senador","election_year":2026,"election_type":"national","party_name":"Partido X","coalition":null,"list_number":"5","list_position":3,"circunscripcion":"NACIONAL","department_name":null,"won":null}]}
Leyes y votaciones API
GET
/api/v1/bills

Proyectos de ley y leyes (filtros: q, bill_type, commission, slug, bill_number, law_number, senate_number, status, origin, chamber, legislature, author, synced_since, synced_until, sort, per_page)

Solicitud
curl "https://polimetro.org/api/v1/bills?author=nadia-blel-scaff&status=approved"
Respuesta
{"data":[{"slug":"ley-2620","title":"…","bill_type":"Ley","bill_number":"428/25","senate_number":"155/24","law_number":"2620","status":"approved","status_label":"Aprobado","origin":"Senado","last_synced_at":"2026-08-22T12:00:00+00:00"}],"links":{"first":"…","next":null},"meta":{"total":1,"per_page":25}}
GET
/api/v1/bills/{slug}

Un proyecto/ley por slug (incluye autores)

Solicitud
curl "https://polimetro.org/api/v1/bills/ley-2620"
Respuesta
{"data":{"slug":"ley-2620","title":"…","bill_type":"Ley","law_number":"2620","status":"approved","chamber":"senate","origin":"Senado","commissions":["Séptima"],"authors":[{"name":"NADIA BLEL SCAFF","chamber":"senator","politician_slug":"nadia-blel-scaff","matched":true}]}}
GET
/api/v1/bills/{slug}/authors

Autores de un proyecto/ley (con el político enlazado si coincide)

Solicitud
curl "https://polimetro.org/api/v1/bills/ley-2620/authors"
Respuesta
{"data":[{"name":"NADIA BLEL SCAFF","chamber":"senator","matched":true,"politician":{"slug":"nadia-blel-scaff","name":"Nadia Blel Scaff","url":"https://polimetro.org/politicos/nadia-blel-scaff"}}]}
GET
/api/v1/bills/{slug}/votes

Votación registrada de un proyecto/ley (filtro: vote=yes|no|abstain|absent)

Solicitud
curl "https://polimetro.org/api/v1/bills/ley-2620/votes?vote=yes"
Respuesta
{"data":[{"vote":"yes","vote_label":"Sí","politician":{"slug":"nadia-blel-scaff","name":"Nadia Blel Scaff","party":"Partido Conservador","url":"https://polimetro.org/politicos/nadia-blel-scaff"}}],"meta":{"total":1,"per_page":100}}
Cuestionario de afinidad API
POST
/api/v1/quiz/generate

Genera entre 1 y 50 preguntas a partir de leyes elegidas al azar y devuelve las preguntas creadas con sus leyes de origen. Requiere API key. Body: count (1–50), pool_size?, version_id? (si se omite, se crea una versión automáticamente).

Solicitud
curl -X POST -H "X-Api-Key: pmk_xxx" -H "Content-Type: application/json" -d '{"count":10}' "https://polimetro.org/api/v1/quiz/generate"
Respuesta
{"data":{"version":{"id":7,"name":"Generada 05 sep 2026","is_published":false},"counts":{"questions":10,"bills":10,"positions":128},"questions":[{"id":51,"question":"¿Estás de acuerdo con el proyecto de ley: «…»?","topic":"Salud","bill_id":42,"bill":{"id":42,"slug":"ley-2620","title":"…"},"options":{"agree":"A favor","neutral":"Neutral","disagree":"En contra"}}],"bills":[{"id":42,"slug":"ley-2620","title":"…"}]}}
POST
/api/v1/quiz/answers

Envía respuestas y recibe los políticos ordenados por afinidad. answers acepta lista de {question_id, stance, important?} o mapa {question_id: stance}. stance: agree|neutral|disagree. limit? (1–100).

Solicitud
curl -X POST -H "Content-Type: application/json" -d '{"answers":[{"question_id":51,"stance":"agree","important":true},{"question_id":52,"stance":"disagree"}],"limit":5}' "https://polimetro.org/api/v1/quiz/answers"
Respuesta
{"data":[{"match_percent":86,"matched_questions":2,"topics":{"Salud":100,"Seguridad y justicia":50},"politician":{"slug":"nadia-blel-scaff","name":"Nadia Blel Scaff","party":"Partido Conservador","is_active":true,"url":"https://polimetro.org/politicos/nadia-blel-scaff"}}],"meta":{"answered":2,"candidates":5}}
GET
/api/v1/quiz/questions

Preguntas del cuestionario (filtros: version_id, bill_id, active, per_page)

Solicitud
curl "https://polimetro.org/api/v1/quiz/questions?bill_id=42"
Respuesta
{"data":[{"id":51,"question":"¿Estás de acuerdo con el proyecto de ley: «…»?","topic":"Salud","is_active":true,"quiz_version_id":7,"bill_id":42,"bill":{"id":42,"slug":"ley-2620","title":"…"}}],"meta":{"total":1,"per_page":25}}
GET
/api/v1/quiz/questions/{id}

Una pregunta por id (incluye su versión y ley de origen)

Solicitud
curl "https://polimetro.org/api/v1/quiz/questions/51"
Respuesta
{"data":{"id":51,"question":"…","topic":"Salud","quiz_version_id":7,"bill_id":42,"bill":{"id":42,"slug":"ley-2620","title":"…"},"options":{"agree":"A favor","neutral":"Neutral","disagree":"En contra"}}}
GET
/api/v1/quiz/versions/{id}

Preguntas de una versión

Solicitud
curl "https://polimetro.org/api/v1/quiz/versions/7"
Respuesta
{"data":[{"id":51,"question":"…","topic":"Salud","bill_id":42}],"meta":{"total":10,"per_page":50}}
GET
/api/v1/quiz/bills/{id}/questions

Preguntas generadas a partir de una ley (por id de la ley)

Solicitud
curl "https://polimetro.org/api/v1/quiz/bills/42/questions"
Respuesta
{"data":[{"id":51,"question":"…","topic":"Salud","quiz_version_id":7,"bill_id":42}],"meta":{"total":1,"per_page":50}}
Curules (número de escaños) API
GET
/api/v1/seats

Número de curules por cargo, periodo y ámbito. Filtros: position (cargo), department_id, municipality_id, term_start (periodo exacto), from + to (rango de fechas que se solapan), per_page.

Solicitud
curl "https://polimetro.org/api/v1/seats?position=deputy&department_id=76"
Respuesta
{"data":[{"id":2,"position":"deputy","position_label":"Diputado","scope":"department","period":{"term_start":"2024-01-01","term_end":"2027-12-31"},"department":{"id":76,"name":"Valle del Cauca"},"seats_total":21,"seats_filled":20,"seats_vacant":1,"vacancies_recorded":1}],"meta":{"total":1,"per_page":25}}
GET
/api/v1/seats/summary

Totales agrupados por cargo (curules, ocupadas, vacantes, vacancias). Acepta los mismos filtros que /seats.

Solicitud
curl "https://polimetro.org/api/v1/seats/summary?from=2022-01-01&to=2026-12-31"
Respuesta
{"data":[{"position":"senator","position_label":"Senador","records":1,"seats_total":108,"seats_filled":105,"seats_vacant":3,"vacancies_recorded":3}],"meta":{"filters":{"from":"2022-01-01","to":"2026-12-31"},"seats_total":108,"seats_vacant":3}}
Ejecutivo (Presidente / Vicepresidente) API
GET
/api/v1/executives

Presidente y Vicepresidente. Filtros: period (2022-2026), election_date, status (active|inactive), party (nombre o id), per_page.

Solicitud
curl "https://polimetro.org/api/v1/executives?period=2022-2026"
Respuesta
{"data":[{"name":"Gustavo Petro Urrego","position":"president","position_label":"Presidente","party":"Pacto Histórico","term_start":"2022-08-07","term_end":"2026-08-07","election_date":"2022-06-19","status":"inactive"}],"meta":{"total":2,"per_page":25}}
GET
/api/v1/executives/presidents

Solo presidentes. Mismos filtros que /executives.

Solicitud
curl "https://polimetro.org/api/v1/executives/presidents?status=active"
Respuesta
{"data":[{"name":"…","position":"president","term_start":"2026-08-07","status":"active"}],"meta":{"total":1,"per_page":25}}
GET
/api/v1/executives/vice-presidents

Solo vicepresidentes. Mismos filtros que /executives.

Solicitud
curl "https://polimetro.org/api/v1/executives/vice-presidents?party=Pacto"
Respuesta
{"data":[{"name":"Francia Elena Márquez Mina","position":"vice_president","party":"Pacto Histórico","term_start":"2022-08-07"}],"meta":{"total":1,"per_page":25}}
Instituciones (IES) y colegios API
GET
/api/v1/institutions

Instituciones de educación superior (SNIES). Filtros: q, sector, academic_character, status, legal_nature, branch, department, municipality, nit, accredited, parent (código|root), sort, per_page

Solicitud
curl "https://polimetro.org/api/v1/institutions?academic_character=Universidad&sector=Oficial"
Respuesta
{"data":[{"snies_code":"1101","name":"UNIVERSIDAD NACIONAL DE COLOMBIA","academic_character":"Universidad","sector":"Oficial","department":"Bogotá, D.C.","accredited":true,"children_count":8}],"meta":{"total":61,"per_page":25}}
GET
/api/v1/universities

Alias de /institutions?kind=university (educación superior, SNIES)

Solicitud
curl "https://polimetro.org/api/v1/universities?accredited=true&department=Valle%20del%20Cauca"
Respuesta
{"data":[{"kind":"university","name":"…","academic_character":"Universidad","sector":"Oficial","accredited":true}],"meta":{"total":41,"per_page":25}}
GET
/api/v1/schools

Colegios (sedes educativas, DANE/SISE). Alias de /institutions?kind=school. Filtros: q, sector, status, area vía atributos, department, municipality

Solicitud
curl "https://polimetro.org/api/v1/schools?department=Antioquia&sector=Oficial"
Respuesta
{"data":[{"kind":"school","dane_code":"105001000001","name":"INSTITUCION EDUCATIVA FE Y ALEGRIA…","sector":"Oficial","area":"Urbano","department":"Antioquia","municipality":"Medellín"}],"meta":{"total":8483,"per_page":25}}
GET
/api/v1/institutions/{slug}

Una institución con seccionales, directivos, acto de creación, acreditación y cobertura

Solicitud
curl "https://polimetro.org/api/v1/institutions/universidad-nacional-de-colombia"
Respuesta
{"data":{"snies_code":"1101","name":"UNIVERSIDAD NACIONAL DE COLOMBIA","nit":"899.999.063-3","academic_character":"Universidad","accreditation":{"high_quality":true},"seccionales":[{"name":"…","municipality":"Medellín"}],"directors":[{"first_name":"…","role":"Rector"}]}}
Hospitales e IPS API
GET
/api/v1/ips

IPS / prestadores de salud (REPS). /hospitals es alias. Filtros: q, type, department, municipality, accredited

Solicitud
curl "https://polimetro.org/api/v1/ips?accredited=true&department=Santander"
Respuesta
{"data":[{"provider_code":"6827600289","name":"Fundación Cardiovascular…","type":"IPS Privadas","department":"Santander","accredited":true,"sedes_count":12}],"meta":{"total":65,"per_page":25}}
GET
/api/v1/ips/{provider_code}

Una IPS con sus sedes (por código de habilitación de 10 dígitos)

Solicitud
curl "https://polimetro.org/api/v1/ips/6827600289"
Respuesta
{"data":{"provider_code":"6827600289","name":"…","accreditation":{"status":"Acreditado con excelencia","date":"2024-09-03","cycle":"V"},"sedes":[{"sede_code":"682760028901","name":"…","municipality":"Floridablanca"}]}}
GET
/api/v1/ips/{provider_code}/sedes

Sedes de una IPS (filtro: accredited)

Solicitud
curl "https://polimetro.org/api/v1/ips/6827600289/sedes"
Respuesta
{"data":[{"sede_code":"682760028901","name":"…","municipality":"Floridablanca","accredited":true}],"meta":{"total":12,"per_page":50}}
GET
/api/v1/ips-sedes

Todas las sedes de IPS (filtros: q, code, department, municipality, accredited, per_page)

Solicitud
curl "https://polimetro.org/api/v1/ips-sedes?municipality=76001&accredited=true"
Respuesta
{"data":[{"sede_code":"760010395601","name":"…","department":"Valle del Cauca","department_code":"76","municipality":"Santiago de Cali","municipality_code":"76001","accredited":true,"provider":{"provider_code":"7600103956","name":"RED DE SALUD DEL NORTE E.S.E."}}],"meta":{"total":1,"per_page":50}}
GET
/api/v1/ips-sedes/{sede_code}

Una sede por su código de habilitación (12 dígitos)

Solicitud
curl "https://polimetro.org/api/v1/ips-sedes/760010395601"
Respuesta
{"data":{"sede_code":"760010395601","name":"…","municipality_code":"76001","accredited":true,"provider":{"provider_code":"7600103956"}}}
Entidades del Estado API
GET
/api/v1/government-entities

Entidades del Estado (SIGEP · Función Pública). Filtros: q, nit, order, suborden (alias kind), nivel, organic_classification, sector, legal_nature, linkage_type, status, department, municipality, per_page

Solicitud
curl "https://polimetro.org/api/v1/government-entities?order=nacional&sector=Salud"
Respuesta
{"data":[{"sigep_code":"0004","name":"MINISTERIO DE HACIENDA Y CRÉDITO PÚBLICO","slug":"ministerio-de-hacienda-y-credito-publico","nit":"899999090-2","order":"Nacional","suborden":"No Aplica","nivel":"Central","sector":"Hacienda","legal_nature":"Ministerio","department":"Bogotá D.C.","department_code":"11","municipality":"Bogotá D.C.","municipality_code":"11001"}],"meta":{"total":286,"per_page":25}}
GET
/api/v1/government-entities/{slug}

Una entidad del Estado por slug

Solicitud
curl "https://polimetro.org/api/v1/government-entities/ministerio-de-hacienda-y-credito-publico"
Respuesta
{"data":{"sigep_code":"0004","name":"MINISTERIO DE HACIENDA Y CRÉDITO PÚBLICO","order":"Nacional","sector":"Hacienda","municipality_code":"11001"}}
Otros lugares y entidades API
GET
/api/v1/places

Otros lugares y entidades públicas. Filtros: q, type, sector, department, municipality, sort, per_page

Solicitud
curl "https://polimetro.org/api/v1/places?type=public_entity&department=Valle%20del%20Cauca"
Respuesta
{"data":[{"type":"public_entity","name":"…","department":"Valle del Cauca"}],"meta":{"total":0,"per_page":25}}
Geografía (Divipola) API
GET
/api/v1/regions

Regiones con conteo de departamentos

Solicitud
curl "https://polimetro.org/api/v1/regions"
Respuesta
{"data":[{"id":1,"code":null,"name":"Caribe","departments_count":7}]}
GET
/api/v1/regions/{region}/departments

Departamentos por región (id, código o nombre)

Solicitud
curl "https://polimetro.org/api/v1/regions/Caribe/departments"
Respuesta
{"data":[{"id":8,"code":"08","name":"Atlántico","capital":"Barranquilla"}]}
GET
/api/v1/departments

Departamentos (filtro: q)

Solicitud
curl "https://polimetro.org/api/v1/departments?q=Valle"
Respuesta
{"data":[{"id":24,"code":"76","name":"Valle del Cauca","capital":"Cali"}],"meta":{"total":1}}
GET
/api/v1/departments/{department}/municipalities

Municipios por departamento (id, código o nombre)

Solicitud
curl "https://polimetro.org/api/v1/departments/76/municipalities"
Respuesta
{"data":[{"id":900,"code":"76001","name":"Santiago de Cali","department":"Valle del Cauca"}],"meta":{"total":42}}
GET
/api/v1/municipalities

Municipios (filtros: q, department, non_municipalized). Incluye áreas no municipalizadas / corregimientos departamentales.

Solicitud
curl "https://polimetro.org/api/v1/municipalities?non_municipalized=true"
Respuesta
{"data":[{"id":900,"code":"91263","name":"El Encanto","non_municipalized":true,"department":"Amazonas"}],"meta":{"total":18}}
GET
/api/v1/lookup

Resolver id/código por nombre (kind=region|department|municipality|type)

Solicitud
curl "https://polimetro.org/api/v1/lookup?municipality=Cali"
Respuesta
{"data":{"municipality":[{"id":900,"code":"76001","name":"Santiago de Cali","department":"Valle del Cauca"}]}}