Datos abiertos
Datos y API Todo lo que muestra el sitio sale de una API pública de solo lectura en https://api.impactopublico.pt, sin clave ni cuenta. Las respuestas usan el envelope {data, meta}: los registros viajan en data y la procedencia — instante de observación, URL oficial, SHA-256 y recuentos — viaja en meta.source.
Estado de la cobertura La API publica metadatos oficiales, no conclusiones. Un valor que no pasa la validación se publica como null: la proyección nunca adivina. Listas y detalles usan una caché pública corta con stale-while-revalidate; una petición malformada responde 400 y un registro inexistente responde 404.
Cómo llamar a la API Dirección base: https://api.impactopublico.pt Abrir /v1/build en el navegador
Cada dirección de la lista de abajo cuelga de esta, responde a GET y devuelve JSON. Abra una en el navegador para ver la respuesta, o copie un ejemplo y ejecútelo tal cual.
En la terminal, con curl:
curl -s "https://api.impactopublico.pt/v1/audit-reports?limit=1"En Python, leyendo el envelope {data, meta}:
import json
import urllib.request
peticion = "https://api.impactopublico.pt/v1/audit-reports?limit=3"
with urllib.request.urlopen(peticion) as respuesta:
cuerpo = json.load(respuesta)
for informe in cuerpo["data"]:
print(informe["reportNumber"], "—", informe["title"])
print("Fuente:", cuerpo["meta"]["source"]["officialPageUrl"])
print("Licencia:", cuerpo["meta"]["license"]["id"])La respuesta del primer comando, con los campos largos abreviados con …: los registros en data, el documento oficial y el instante de observación en meta.source, los términos de reutilización en meta.license.
{
"data": [
{
"reportNumber": "01/2026",
"title": "Auditoria na área da contratação pública - Município de Marvão",
"publishedAt": "2026-03-30"
}
],
"meta": {
"total": 12,
"source": {
"observedAt": "2026-08-24T12:35:19.498Z",
"officialPageUrl": "https://www.tcontas.pt/…?dset=2026",
"pageSha256": "17c7d7f8dccb75a9…",
"totalRecords": 12
},
"license": {
"id": "CC-BY-4.0",
"url": "https://creativecommons.org/licenses/by/4.0/"
}
}
}Reutilización Puede reutilizar lo que produce el observatorio bajo la licencia Creative Commons Atribución 4.0 Internacional (CC BY 4.0): la compilación, la curaduría, las citas verificadas, los vínculos entre las etapas de una política, los registros de cobertura, los recuentos derivados y las respuestas de la API. Cópielo, republíquelo y construya encima, incluido el uso comercial, siempre que cite el origen. Cada respuesta de la API declara estos términos en meta.license, junto a meta.source.
La licencia cubre esta capa y no los documentos oficiales. Los actos del Diário da República, los registros del Portal BASE, las actas municipales, los textos aprobados en el Parlamento Europeo y cualquier pasaje citado tal como consta en la fuente pertenecen a las instituciones que los publican y conservan sus términos.
Línea de atribución: Fuente: Impacto Público — impactopublico.pt, CC BY 4.0 Ver el texto íntegro de la licencia
Para dudas sobre reutilización, escriba a contacto [arroba] impactopublico.pt .
IDENTIDAD
El corte publicado: commit, instante de publicación y recuentos derivados del repositorio, incluido el universo municipal.
FUENTES
La última observación de cada fuente del catálogo público: estado operativo, recuentos, cobertura y cambios detectados.
DOSIERES
Dosieres publicados; el detalle /v1/policies/:slug reúne recorrido, fuentes con SHA-256, evidencia, búsqueda de cobertura y diversidad de fuentes.
PARLAMENTO
Agenda, consultas abiertas, cambios observados, votaciones y leyes aprobadas del día.
INICIATIVAS
Catálogo consultable de las iniciativas de la legislatura en curso, con filtros y cursor opaco; detalle en /v1/initiatives/:externalId.
PARTIDOS
Grupos parlamentarios con recuentos por autor; ficha en /v1/parties/:slug.
REGISTRO DEL DÍA
Las cuatro áreas del registro del día, con el número de candidatos evaluados y la regla pública de selección.
CONTRATOS
Contratos públicos de la versión activa del Portal BASE, con búsqueda, filtros y detalle en /v1/contracts/:externalId.
FONDOS EUROPEOS
Operaciones de Portugal 2030 de la versión activa; áreas temáticas oficiales en /v1/pt2030/themes .
CUENTAS MUNICIPALES
Ingresos recaudados y gastos pagados por municipio, del corte anual DGAL aceptado.
MUNICIPIOS
Índice municipal observado; documentos por municipio en /v1/municipalities/:slug/documents.
EVALUACIONES
Evaluaciones del catálogo AD&C, con los productos oficiales de cada una.
AUDITORÍAS
Informes de auditoría del Tribunal de Cuentas en la versión activa.
CONSULTAS
Consultas públicas de la ERSE, con documentos oficiales y fechas.
PRESUPUESTO
Ejecución presupuestaria mensual; el presupuesto aprobado en /v1/state-budget y la comparación descriptiva en /v1/budget-comparison .
EUROPA
La delegación portuguesa en el Parlamento Europeo; textos aprobados en /v1/european-adopted-texts .
ESTADÍSTICAS
Ventanas históricas con y sin recuento publicado; recuentos por familia en /v1/statistics/historical?familia=iniciativas y relaciones en /v1/statistics/relationships .
RSS
Canales RSS sin cuenta: el día parlamentario, el registro del día en /feed.xml y cada dosier en /politicas/:slug/feed.xml.
Límites y condiciones de acceso Sin clave y sin cuenta. Cualquier lectura de /v1 responde desde cualquier origen, así que puede llamarla desde un cuaderno de redacción, una celda de Observable o un gráfico en su propio sitio. El ritmo es de 120 peticiones por minuto y cliente. Cada respuesta indica cuántas quedan en X-RateLimit-Remaining y cuántos segundos faltan para renovar en X-RateLimit-Reset. Por encima recibe un 429 con Retry-After y el acceso vuelve solo. Las rutas de cuenta y de redacción quedan fuera de esta apertura. Trabajan con sesión y solo responden al origen del sitio. Si publica una cifra, guarde a su lado el commit que devuelve /v1/build. Identifica el corte exacto del que salió.