WSSearchGeocoding
Búsqueda de dirección por texto libre o por campos estructurados. Retorna una lista de resultados con coordenadas.
Target route
POST /apidev/legacy/WSSearchGeocoding
Status
Reusable with adapter — GeoTareas ya expone dos caminos de búsqueda geocoding. Falta el adapter legacy. Hay una decisión de diseño pendiente sobre qué backend usar.
Authentication
{
"WSAutorizacion": {
"Guid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"Usuario": "usuario@empresa.com",
"Password": "contraseña"
}
}
Request body
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
WSAutorizacion | object | Sí | Credenciales de autenticación legacy |
Query | string | Condicional | Búsqueda libre (ej: "18 de Julio 1234 Montevideo") |
Calle | string | Condicional | Nombre de calle (búsqueda estructurada) |
Numero | string | No | Número de puerta |
Ciudad | string | No | Ciudad |
Departamento | string | No | Departamento |
Pais | string | No | País (default: Uruguay) |
Limit | integer | No | Máximo de resultados (default: 5) |
Al menos Query o Calle debe estar presente.
{
"WSAutorizacion": {
"Guid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"Usuario": "usuario@empresa.com",
"Password": "contraseña"
},
"Query": "18 de Julio 1234 Montevideo"
}
Response body
| Campo | Tipo | Descripción |
|---|---|---|
Resultado | string | "OK" o código de error |
Mensaje | string | Descripción del resultado |
Salida | string | Respuesta cruda del proveedor (JSON string) |
Resultados | array | Lista de coincidencias |
Resultados[].Direccion | string | Dirección formateada |
Resultados[].Latitud | number | Latitud |
Resultados[].Longitud | number | Longitud |
Resultados[].Importancia | number | Score de relevancia (0-1) |
{
"Resultado": "OK",
"Mensaje": "",
"Salida": "[{\"place_id\":123...}]",
"Resultados": [
{
"Direccion": "18 de Julio 1234, Montevideo, Uruguay",
"Latitud": -34.9058,
"Longitud": -56.1882,
"Importancia": 0.85
}
]
}
Backend services disponibles
| Opción | Endpoint | Provider | Cuándo usar |
|---|---|---|---|
| Camino A | POST /api/geocoding/nominatim/geocode | Nominatim | Comportamiento strict Nominatim (máxima paridad legacy) |
| Camino B | POST /api/geocoding/search | Híbrido | Mejor calidad con fallback multi-proveedor (logicsat, nominatim, google, mapbox) |
Decisión de diseño pendiente
Si se requiere máxima compatibilidad con el contrato legacy original, usar Camino A (Nominatim puro).
Si se tolera mejora de calidad manteniendo el mismo formato de respuesta, usar Camino B.
Migration note
Pendiente de implementación. Pasos:
- Definir qué camino usar (Nominatim strict vs híbrido)
- Construir el adapter legacy con validación
WSAutorizacion - Preservar validación de saldo/habilitación de geocoding por compañía
- Adaptar la salida al formato
Resultados[]
Related
- WSGeocoding — geocoding estructurado interno (calle/esquina, calle/número, ruta/km)
- WSReverseGeocoding