Geocodificación inversa

Servicios web

Documentación sobre la funcionalidad Geocodificación inversa disponible a través del webservice HTTP-JSON/XML de la plataforma CERCALIA.

La URL base a utilizar es:

* Clave de seguridad. Es la misma KEY que para la API de mapas de Cercalia

Las peticiones HTTP se pueden enviar en GET o POST
Las respuestas son en formato JSON / XML

Geocoding inverso

Petición:

Ejemplo de petición (coordenadas lat,long 37.777041,-3.785477):

&cmd=prox&mocs=gdd&mo=37.777041,-3.785477&rqge=adr


Para agrupar diferentes coordenadas en una sola petición, utilizar el siguiente formato:

&cmd=prox&mocs=gdd&molist=[37.77741,-3.785477],[37.87704,-3.78577]&rqge=adr

* El número de posiciones máximo por petición es de 100.

Donde:

  • cmd= tipo de petición de Cercalia
  • mocs=gdd indica que el sistema de coordenadas en el que están las coordenadas que se envían. En este caso geográficas (latitud,longitud)
  • mo= Y,X en el caso de geográficas, X,Y en el resto de sistemas de coordenadas
  • rqge= nivel de detalle de la información que de desea obtener.

Posibles valores rqge:

Valor Significado
cadr Dirección postal (solo devuelve calles o carreteras con nombre, no códigos de carretera)
adr Dirección postal / carretera (incluyendo códigos de carretera) y PK si disponible
st Calle / carretera
ct Ciudad / localidad
pcode Código postal
mun Municipio
subreg Sub-Región
reg Región
ctry País

Respuesta:

Para una coordenada que se encuentra en una calle, el formato de la respuesta es el siguiente:

<cercalia cmd="prox" version="1">
	<proximity center="-421397,4521799" num="1" type="adr">
		<gelist num="1" type="adr">
			<location>
				<municipality id="ESP230503">Jaén</municipality>
				<subregion id="ESP23">Jaén</subregion>
				<region id="ESPAND">Andalucía</region>
				<country id="ESP">España</country>
			</location>
			<ge article="de" dist="42" frc="ep" height="505" id="ESP230503000090371" kmh="50" name="Avenida de Madrid" pos="1" prefix="Avenida" sname="Madrid" zonename="Jaén" zonetype="U">
				<housenumber>66</housenumber>
				<intersection article="de" dist="51" id="ESP230503000090318" name="Calle de Isaac Albéniz" prefix="Calle" sname="Isaac Albéniz">
					<coord x="-421403" y="4521748"/>
				</intersection>
				<postalcode country_id="ESP" id="23008"/>
				<city id="ESP17240006020330">Jaén</city>
				<municipality id="ESP230503">Jaén</municipality>
				<subregion id="ESP23">Jaén</subregion>
				<region id="ESPAND">Andalucía</region>
				<country id="ESP">España</country>
				<coord x="-421378" y="4521837"/>
			</ge>
		</gelist>
	</proximity>
</cercalia>

Donde:

  • dist= indica la distancia en metros (línea recta) entre la coordenada indicada y el elemento encontrado (dirección)
  • kmh= indica la velocidad máxima teórica del tramo de calle o carretera (según TomTom). En países anglosajones, este valor está en millas por hora (no km/h)
  • name= Nombre completo de la calle
  • prefix= Prefijo del nombre de la calle
  • sname= Nombre de la calle
  • article= Artículo del nombre de la calle
  • housenumber= Número de portal (si disponible)
  • height= altura en metros del punto
  • zonetype= indica si se encuentra en una zona urbana ("U") o industrial ("I")
  • zonename= nombre de la población o el polígono industrial donde se encuentra
  • district= distrito (división infra-municipal, disponible solo en algunos países)
  • municipality indica el municipio (ID y nombre)
  • subregion indica la provincia (ID y nombre)
  • region indica la comunidad autónoma (ID y nombre)
  • country indica el país (ID y nombre)

Adicionalmente, se añade el nodo, correspondiente al cruce de vía más cercano.

Para una coordenada que se encuentra en una carretera, el formato de la respuesta es el siguiente:

<cercalia cmd="prox" version="1">
	<proximity center="-404736,4937053" num="1" type="adr">
		<gelist num="1" type="adr">
			<location>
				<municipality id="ESP281296">San Agustín del Guadalix</municipality>
				<subregion id="ESP28">Madrid</subregion>
				<region id="ESPMAD">Comunidad de Madrid</region>
				<country id="ESP">España</country>
			</location>
			<ge dist="0" frc="na2" height="666" kmh="90" name="M-104" pos="1">
				<km>2</km>
				<postalcode country_id="ESP" id="28750"/>
				<city dist="2225" id="ESP17240002420619">San Agustín del Guadalix</city>
				<municipality id="ESP281296">San Agustín del Guadalix</municipality>
				<subregion id="ESP28">Madrid</subregion>
				<region id="ESPMAD">Comunidad de Madrid</region>
				<country id="ESP">España</country>
				<coord x="-404736" y="4937053"/>
			</ge>
		</gelist>
	</proximity>
</cercalia>

 

Donde los parámetros son iguales que en el caso de calle, con la excepción de los registros que hacen referencia a la vía.

  • Name= código de la vía
  • km= punto quilométrico (si disponible). Puede contener letras, en casos especiales (ej: <km>31F</km>)
  • direction= sentido de la vía (PK ascendente -A- o descentende -D-). Solamente disponible para vías desdobladas
  • frc= tipo de eje viario.

Posibles valores frc:

Valor frc Tipo de vía
ap Autopista (peaje)
av Autovía
na1 Nacional & autonómica de primer orden
a2 Autonómica de segundo orden
pl Provincial y local
ep Eje urbano principal
cl Calle
pt Calle peatonal

Obtener las poblaciones / municipios / regiones que intersectan un polígono

Petición:

Ejemplo de petición:

&cmd=prox&rqge=mun&cs=4326&wkt=POLYGON((2.149028778076172%2041.39586980544921,2.146625518798828%2041.41930231731321,2.1816444396972656%2041.41981722266227,2.1813011169433594%2041.398187683195694,2.149028778076172%2041.39586980544921))

Donde:

  • cmd= tipo de petición de Cercalia.
  • cs=4326 Coordenadas de la geometría expresadas en geográficas (LonLat).
  • wkt= Polígono o multi-polígono expresado en formato WKT
  • rqge= tipo de información solicitada.

Posibles valores rqge:

Valor rqge Significado
ct localidades
mun municipios
subreg provincias
reg comunidades

Respuesta:

<cercalia cmd="prox" version="1">
	<proximity buffer="0.0" cs="4326" tolerance="0.0" type="mun" wkt="POLYGON((2.149028778076172 41.39586980544921,2.146625518798828 41.41930231731321,2.1816444396972656 41.41981722266227,2.1813011169433594 41.398187683195694,2.149028778076172 41.39586980544921))">
		<gelist num="1" type="mun">
			<ge id="ESP080193" name="Barcelona" pos="1">
				<subregion id="ESP08">Barcelona</subregion>
				<region id="ESPCAT">Cataluña</region>
				<country id="ESP">España</country>
				<coord x="241554" y="5041472"/>
			</ge>
		</gelist>
	</proximity>
</cercalia>

Obtener la sección censal de una coordenada

Petición:

Ejemplo de petición:

&cmd=prox&mo=40.3446890,-3.653151816&mocs=gdd&rqpoicats=d00seccen

Donde:

  • mo= coordenadas (Y,X).

Respuesta:

Formato:

  <cercalia cmd="prox" version="1">
	<proximity center="-3.653151816470334,40.34468901375571" num="1" type="poi">
		<poilist num="1">
			<poi category_id="D00SECCEN" dist="0" geometry="Z" id="DC00SC2807918002" pos="1" subcategory_id="-1">
				<name>2807918002</name> 
				<info>2807918002</info> 
				<ge>
					<city id="ESP57240362251934">Madrid</city> 
					<municipality id="ESP280796">Madrid</municipality> 
					<subregion id="ESP28">Madrid</subregion> 
					<region id="ESPMAD">Comunidad de Madrid</region> 
					<country id="ESP">España</country> 
				</ge>
				<coord x="-3.6520019729066613" y="40.356833273872574" /> 
			</poi>
		</poilist>
	</proximity>
</cercalia>

Donde:

  • name= ID de sección censal
  • info= ID de sección censal

*Ambos contienen la misma información

Obtener la parcela SIGPAC de una coordenada

Petición:

Ejemplo de petición:

&cmd=prox&mo=41.426362180,2.038241447&mocs=gdd&rqpoicats=d00sigpac

Donde:

  • mo= coordenadas (Y,X).

Respuesta:

Formato:

  <cercalia cmd="prox" version="1">
	<proximity center="2.038241447055829,41.42636217964459" num="1" type="poi">
		<poilist num="1">
			<poi category_id="D00SIGPAC" dist="0" geometry="Z" id="D00_08122_0_0_4_9000_1" pos="1" subcategory_id="-1">
				<name>08122:0:0:4:9000:1</name>
				<info>08122|ZU|19.254569471||0</info>
				<ge>
					<city id="ESP17240008188399">Molins de Rei</city>
					<municipality id="ESP081234">Molins de Rei</municipality>
					<subregion id="ESP08">Barcelona</subregion>
					<region id="ESPCAT">Cataluña</region>
					<country id="ESP">España</country>
				</ge>
				<coord x="2.039759599885991" y="41.42864740772865"></coord>
			</poi>
		</poilist>
	</proximity>
	<server>http://c1.cercalia.com</server>
</cercalia>

Donde:

  • name= ID de parcela SIGPAC.
  • info= información asociada a la parcela SIGPAC, estructurada de la siguiente forma:
  • campo1|campo2|campo3|campo4|campo5
    • campo1= ID municipio (código INE)
    • campo2= Uso parcela
    • campo3= Superficie parcela (Ha)
    • campo4= Tipo de zona vulnerable
    • campo5= Código de zona vulnerable

Obtener la zona horaria de una coordenada

Petición:

Ejemplo de petición:

&cmd=prox&mocs=gdd&mo=52.252025183,20.995254141&rqge=timezone&clientid=0123456789&datetime=2019-09-27T14:30:12Z

Donde:

  • mo=gdd coordenadas (Y,X) a resolver
  • datetime= día y hora a comprobar (opcional). Si se especifica, devuelve la hora local en la región donde se encuentran las coordenadas

Respuesta:

  <cercalia cmd="prox" version="1">
	<proximity center="2337181,6812015" num="1" type="timezone">
		<gelist num="1" type="timezone">
			<ge daylightsavingtime="3600000" dist="0" id="Europe/Warsaw" localdatetime="2019-09-27T16:30:12+02:00" name="Central European Summer Time" pos="1" utcdatetime="2019-09-27T14:30:12Z" utctimeoffset="3600000"/>
		</gelist>
	</proximity>
</cercalia>

Donde:

  • id= ID del huso horario
  • name= Nombre del huso horario
  • localdatetime= día y hora local
  • utcdatetime= día y hora en formato UTC
  • utctimeoffset= offset entre hora local y hora UTC
  • daylightsavingtime= indica si para esta fecha se está en horario de verano o invierno

Prueba el Webservice

Ej. -1.99207702
Ej. 43.3156