Skip to main content

catastro-api

API pública del Catastro español (DGC). Callejero, datos catastrales no protegidos, conversión de coordenadas. SOAP/REST/JSON. 48 provincias (excepto País Vasco y Navarra). Sin autenticación.

Aller à l'installation

Informations de source

Dépôt
Ntizar/NtizarBrainMasterMind
Dernière activité de la source
30 juin 2026 à 12:46
Langue détectée de SKILL.md
espagnol
Étoiles
2
Forks
0

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
catastro-api
version
1.0.0
description
API pública del Catastro español (DGC). Callejero, datos catastrales no protegidos, conversión de coordenadas. SOAP/REST/JSON. 48 provincias (excepto País Vasco y Navarra). Sin autenticación.
tags
["catastro","catastro-api","catastro-spain","parcelas","coordenadas","callejero","inmuebles","government-data"]
# API Catastro — Datos Catastrales No Protegidos ## Resumen La **Dirección General del Catastro (DGC)** ofrece servicios web gratuitos con información catastral no protegida (todo excepto titularidad y valor catastral). **Dominio:** `https://ovc.catastro.meh.es` **Formatos:** JSON y XML **Método:** GET (REST) y SOAP **Autenticación:** NO requerida para datos no protegidos **Cobertura:** 48 provincias (excepto País Vasco y Navarra) ## Endpoints JSON Base URL: `https://ovc.catastro.meh.es/OVCServWeb/OVCWcfCallejero/COVCCallejero.svc/json/` ### 1. ObtenerProvincias ``` GET /ObtenerProvincias ``` Devuelve listado de todas las provincias con código INE. **Estructura:** ```json { "consulta_provincieroResult": { "control": {"cuprov": 48}, "provinciero": { "prov": [ {"cpine": "39", "np": "CANTABRIA"}, {"cpine": "28", "np": "MADRID"} ] } } } ``` ### 2. ObtenerMunicipios ``` GET /ObtenerMunicipios?Provincia={PROVINCIA} ``` - `Provincia`: nombre de la provincia (obligatorio) **Estructura:** ```json { "consulta_municipieroResult": { "municipiero": { "muni": [ { "nm": "SANTANDER", "carto": "U", "locat": {"cd": "39", "cmc": "190"}, "loine": {"cp": "39", "cm": "75"} } ] } } } ``` ### 3. ObtenerCallejero ``` GET /ObtenerCallejero?Provincia={PROVINCIA}&Municipio={MUNICIPIO}&TipoVia={TIPOVIA}&NomVia={NOMVIA} ``` - `Provincia`: nombre (obligatorio) - `Municipio`: nombre (obligatorio) - `TipoVia`: abreviatura tipo vía (CL=CL, AV=AVENIDA, etc.) - `NomVia`: nombre de la vía (opcional) ### 4. ObtenerNumerero ``` GET /ObtenerNumerero?Provincia={PROVINCIA}&Municipio={MUNICIPIO}&TipoVia={TIPOVIA}&NomVia={NOMVIA}&Numero={NUMERO} ``` Devuelve referencia catastral de un número concreto. ### 5. Consulta_DNPLOC — Datos por localización ``` GET /Consulta_DNPLOC?Provincia={PROVINCIA}&Municipio={MUNICIPIO}&Sigla={SIGLA}&Calle={CALLE}&Numero={NUMERO}&Bloque={BLOQUE}&Escalera={ESCALERA}&Planta={PLANTA}&Puerta={PUERTA} ``` - `Sigla`: tipo de vía (CL, AV, PL, etc.) **Datos devueltos (inmueble único):** - Tipo: urbano (UR) o rústico (RU) - Referencia catastral - Domicilio tributario - Uso (Residencial, Agrario, etc.) - Superficie (m²) - Coeficiente de participación - Antigüedad - Unidades constructivas - Subparcelas (cultivos) ### 6. Consulta_DNPRC — Datos por referencia catastral ``` GET /Consulta_DNPRC?RefCat={REFCAT} ``` - `RefCat`: referencia catastral de 14, 18 o 20 caracteres ### 7. Consulta_DNPPP — Datos por polígono-parcela ``` GET /Consulta_DNPPP?Provincia={PROVINCIA}&Municipio={MUNICIPIO}&Poligono={POLIGONO}&Parcela={PARCELA} ``` **Ejemplo respuesta (Santander, polígono 1, parcela 1):** ```json { "bico": { "bi": { "idbi": {"cn": "RU", "rc": {"pc1": "39900A0", "pc2": "0100001"}}, "dt": { "np": "CANTABRIA", "nm": "SANTANDER", "locs": {"lors": {"lorus": {"npa": "VIRGEN DEL MAR"}}} }, "ldt": "CL VIRGEN DEL MAR 161 Polígono 1 Parcela 1...", "debi": {"luso": "Agrario", "sfc": "539", "ant": "1920"} }, "finca": { "dff": {"ss": "33692"}, "infgraf": {"igraf": "https://www1.sedecatastro.gob.es/Cartografia/mapa.aspx?..."} } } } ``` ## Servicio de Coordenadas Base URL: `https://ovc.catastro.meh.es/OVCServWeb/OVCWcfCallejero/COVCCoordenadas.svc/json/` ### Consulta_RCCOOR — Referencia catastral por coordenadas ``` GET /Consulta_RCCOOR?SRS={SRS}&Coordenada_X={X}&Coordenada_Y={Y} ``` ### Consulta_CPMRC — Coordenadas por referencia catastral ``` GET /Consulta_CPMRC?SRS={SRS}&Provincia={PROVINCIA}&Municipio={MUNICIPIO}&RefCat={REFCAT} ``` ### Consulta_RCCOOR_Distancia — Referencias por proximidad ``` GET /Consulta_RCCOOR_Distancia?SRS={SRS}&Coordenada_X={X}&Coordenada_Y={Y} ``` **Sistemas de referencia soportados:** - `EPSG:4230` — Geográficas ED50 - `EPSG:4326` — Geográficas WGS84 - `EPSG:4258` — Geográficas ETRS89 - `EPSG:32630` — UTM 30N WGS84 - `EPSG:25830` — UTM 30N ETRS89 - `EPSG:23030` — UTM 30N ED50 ## Tipos de vía (abreviaturas) | Código | Tipo | Código | Tipo | |--------|------|--------|------| | CL | Calle | AV | Avenida | | PL | Plaza | PS | Paseo | | CR | Carretera | CT | Cuesta | | PJ | Pasaje | TR | Travesía | | BL | Bloque | PZ | Plazuela | | CM | Camino | CA | Cañada | | RD | Ronda | RB | Rambla | | GL | Glorieta | SL | Solar | ## Ejemplo JavaScript/Leaflet ```javascript // Buscar referencia catastral por coordenadas async function getCatastroRef(lat, lng) { const url = `https://ovc.catastro.meh.es/OVCServWeb/OVCWcfCallejero/COVCCoordenadas.svc/json/Consulta_RCCOOR?SRS=EPSG:4326&Coordenada_X=${lng}&Coordenada_Y=${lat}`; const resp = await fetch(url); const data = await resp.json(); const result = data.Consulta_RCCOORResult; if (result.control.cuerr > 0) return null; return result.coordenadas.coord[0]; // {pc: {pc1, pc2}, ldt: "dirección"} } // Obtener datos de un inmueble por referencia catastral async function getCatastroData(refCat) { const url = `https://ovc.catastro.meh.es/OVCServWeb/OVCWcfCallejero/COVCCallejero.svc/json/Consulta_DNPRC?RefCat=${refCat}`; const resp = await fetch(url); const data = await resp.json(); const result = data.consulta_dnprcResult; if (result.control.cuerr > 0) return null; return result.bico; // datos completos del inmueble } // Obtener coordenadas de una referencia catastral async function getCatastroCoords(refCat) { const url = `https://ovc.catastro.meh.es/OVCServWeb/OVCWcfCallejero/COVCCoordenadas.svc/json/Consulta_CPMRC?SRS=EPSG:4326&RefCat=${refCat}`; const resp = await fetch(url); const data = await resp.json(); const result = data.Consulta_CPMRCResult; if (result.control.cuerr > 0) return null; return result.coordenadas.coord[0].geo; // {xcen, ycen, srs} } ``` ## Datos descargables (requieren certificado/Cl@ve) La Sede Electrónica del Catastro (`https://www.sedecatastro.gob.es/Accesos/SECAccDescargaDatos.aspx`) ofrece: 1. **Información alfanumérica por provincia (formato CAT)** — todos los inmuebles excepto titularidad y valor 2. **Cartografía vectorial por provincia (formato Shapefile)** — polígonos de parcelas 3. **Ficheros de Redes Topo-Geodésicas Catastrales** 4. **Cartografía Histórica catastral** **Estos requieren:** certificado electrónico o Cl@ve + aceptación de licencia de uso **URL descarga shapefiles:** `https://www.catastro.hacienda.gob.es/web/DescargaCartografia.html` ## Pitfalls - **JSON BOM** → las respuestas JSON tienen BOM UTF-8 (`\ufeff`). Usar `utf-8-sig` al decodificar. - **Nombres de endpoints** → en JSON se llaman `ObtenerProvincias`, `ObtenerMunicipios`, etc. (no `ConsultaProvincia`). - **Provincia por nombre** → usar nombres como "CANTABRIA", "MADRID", "SANTANDER" (no códigos). - **Referencia catastral** → puede tener 14 (finca), 18 o 20 (inmueble) caracteres. Validar longitud. - **Sin País Vasco ni Navarra** → estos territorios tienen su propio catastro. - **Rate limiting** → no hay límites documentados, pero ser razonable (máx ~1 req/seg). - **WSDL/SOAP** → también disponible en `https://ovc.catastro.meh.es/OVCServWeb/OVCWcfCallejero/COVCCallejero.svc?singleWsdl` ## Documentación oficial - **Web services libres:** `https://www.catastro.hacienda.gob.es/ws/Webservices_Libres.pdf` - **Consulta masiva:** `https://www.catastro.hacienda.gob.es/ayuda/masiva/Descripcion_consulta_masiva_datos_Catastrales_tit.pdf` - **Esquemas XML:** `http://www.catastro.hacienda.gob.es/ws/esquemas.htm` - **Sede Electrónica:** `https://www.sedecatastro.gob.es/` ## Uso para dashboard regional Para un dashboard como DatoAsturias: 1. **Parcelas por zona** → `Consulta_RCCOOR_Distancia` con coordenadas del centro de la ciudad 2. **Datos de inmueble al hacer click** → `Consulta_DNPRC` con la referencia catastral 3. **Callejero interactivo** → `ObtenerCallejero` para autocompletado de direcciones 4. **Mapa catastral** → usar el servicio WMS del Catastro o los shapefiles descargados
Voir sur GitHub