País Vasco — Ayudas concedidas (Euskadi)
Índice de Open Data Euskadi que reúne los conjuntos de ayudas concedidas de las tres diputaciones forales y de los ayuntamientos de Bilbao, Vitoria-Gasteiz y Donostia. No es un conjunto unificado: el JSON enlaza la ficha y los datos de cada organismo, cada uno con su formato y su calendario.
Ficha técnica
- Formato
- Índice JSON que enlaza conjuntos CSV de cada organismo
- Cobertura
- Según organismo (Bilbao y Gipuzkoa, hasta 2024; Donostia, 2019–2024 en su propio portal)
- Actualización
- Según organismo; en octubre de 2026 ningún conjunto enlazado traía concesiones de 2025
- Licencia
- Datos abiertos Euskadi
- Entidad
- Gobierno Vasco
Descripción
Open Data Euskadi publica bajo el título «Ayudas concedidas por Organismos Públicos de Euskadi» un fichero JSON de unos 5 KB que no contiene concesiones: es un índice de los conjuntos de datos de ayudas que publica cada organismo. En octubre de 2026 enlazaba ocho conjuntos: los de las diputaciones forales de Álava, Bizkaia y Gipuzkoa, el del Ayuntamiento de Bilbao, el del Ayuntamiento de Vitoria-Gasteiz y tres anuales (2019, 2020 y 2021) del Ayuntamiento de Donostia / San Sebastián. La página del portal cita además las subvenciones de la Administración general de la comunidad autónoma, pero ese enlace lleva a un buscador web de euskadi.eus, no a un conjunto descargable.
Cada entrada del índice indica el organismo, el título del conjunto, su ficha (datasetUrlEs), la frecuencia de actualización en días (updateFrequency: 30 en la mayoría, 90 en Bizkaia y 0 en los de Donostia, que no se actualizan) y un enlace a los datos: el CSV directo (fileUrl) o los metadatos DCAT en RDF (datafileUrl), donde están las URL de los CSV. Por ejemplo, Bilbao publica un CSV por año (2018_concesiones.csv a 2024_concesiones.csv) con separador «;», codificación Latin-1 y el NIF delante del nombre en la columna Beneficiario.
Como cada organismo usa sus propias columnas, formatos y periodos, hay que revisar cada conjunto por separado antes de juntarlos. La propia ficha del índice figura como actualizada por última vez el 25 de marzo de 2022 y sin periodicidad, y se nota: aunque declara frecuencias de 30 o 90 días, en octubre de 2026 ningún conjunto enlazado traía concesiones de 2025. Así estaba cada uno:
- Bilbao: CSV anuales de 2018 a 2024. El de 2024, con concesiones hasta el 27 de diciembre, se subió en enero de 2025 y no había fichero de 2025. - Vitoria-Gasteiz: los metadatos enlazan CSV de 2019 a julio de 2024, pero el de 2024 devolvía un error 404; el último que se descargaba era el de diciembre de 2023. - Donostia / San Sebastián: el índice solo enlaza los conjuntos de 2019, 2020 y 2021, con frecuencia 0. El Ayuntamiento, sin embargo, sigue publicándolos en su propio portal con el mismo formato (donostia.eus/datosabiertos/catalogo/subvenciones_2022, _2023 y _2024; el CSV de cada año está en donostia.eus/datosabiertos/recursos/subvenciones_AAAA/dirulaguntzakAAAA.csv). El de 2024 se publicó en septiembre de 2025 y llega a marzo de 2025. Son CSV separados por comas, en UTF-8, con cabeceras en euskera y castellano y el importe con coma decimal. - Diputación Foral de Gipuzkoa: los metadatos enlazan CSV anuales, en castellano y en euskera, hasta 2024. - Diputación Foral de Álava: el enlace del índice descarga un CSV que solo tiene concesiones de 2020. - Diputación Foral de Bizkaia: el enlace a sus metadatos devolvía un error 404.
Para lo más reciente de cualquiera de ellos, la BDNS sigue siendo la referencia.
Ejemplos de código
# Índice de conjuntos de ayudas (unos 5 KB)
curl -sL -o ayudas_euskadi_indice.json \
"https://opendata.euskadi.eus/contenidos/ds_ayudas_subvenciones/ayudas_concedidas_euskadi_bdns/opendata/ayudas_concedidas_euskadi.json"
# Organismo y título de cada conjunto
python3 -c "import json; [print(d['sourceEs'], '|', d['datasetTitleEs']) for d in json.load(open('ayudas_euskadi_indice.json'))]" import requests
INDICE = 'https://opendata.euskadi.eus/contenidos/ds_ayudas_subvenciones/ayudas_concedidas_euskadi_bdns/opendata/ayudas_concedidas_euskadi.json'
# El JSON es un índice: una entrada por organismo con la ficha de su conjunto de datos
for fuente in requests.get(INDICE, timeout=60).json():
enlace = fuente.get('fileUrl') or fuente.get('datafileUrl')
print(f"{fuente['sourceEs']}: {fuente['datasetTitleEs']}")
print(f" ficha: {fuente['datasetUrlEs']}")
print(f" datos: {enlace}") import pandas as pd
# Concesiones del Ayuntamiento de Bilbao en 2024 (un CSV por año)
url = 'https://opendata.euskadi.eus/contenidos/ds_ayudas_subvenciones/ayudas_bilbao_bdns/opendata/2024_concesiones.csv'
df = pd.read_csv(url, sep=';', encoding='latin-1', dtype={'Beneficiario': str})
# El NIF va delante del nombre en la columna Beneficiario
df[['NIF', 'Nombre']] = df['Beneficiario'].str.extract(r'^(\S+)\s+(.*)$')
print(f'Registros: {len(df):,}')
print(df.groupby('Convocatoria')['Importe'].sum().sort_values(ascending=False).head(10))