3. Ubicaciones
Este modulo es el encargado de gestionar las ubicaciones del sistema, se exponen los siguientes recursos:
Una ubicación puede ser propia o de algún cliente
| Método | Endpoint | Descripción |
|---|---|---|
| GET | /api/locations | Lista de Ubicaciones registradas |
| POST | /api/locations | Crear una ubicación |
| GET | /api/locations/{locationId} | Detalles de Ubicación |
| PATCH | /api/locations/{locationId} | Modificación de datos de una ubicación |
| DELETE | /api/locations/{locationId} | Eliminación de una ubicación |
Ejemplo de cuerpo json POST
{
"code": "U001",
"name": "Lima Capital",
"geo_lat": -12.0463731,
"geo_lng": -77.042754,
"address": "Lima, Perú ",
"client_id": 3,
"radius": 50,
"area_type": "polygon",
"gmap_zoom": 15,
"points": [
{
"lat": -12.050635830632789,
"lng": -77.04262525396727
},
{
"lat": -12.0438731,
"lng": -77.045254
},
{
"lat": -12.0438731,
"lng": -77.040254
}
],
"is_checkpoint": false,
"custom_properties": {},
}
3.1 Parámetros
| Nombre | Modo | Tipo | Descripción |
|---|---|---|---|
| code | Optional | String | Admite letras, números, guiones y guiones bajos pero no espacios |
| name | Required | String | Nombre de la Ubicación |
| geo_lat | Required | Numeric | Latitud |
| geo_lng | Required | Numeric | Longitud |
| address | Required | String | Dirección |
| client_id | Optional | String | ID de Cliente ya registrado en el modulo de clientes |
| radius | Optional | Integer | Radio en metros |
| area_type | Optional | String | Tipo de area (radius - radio) (polygon - polígono) |
| gmap_zoom | Optional | Numeric | Zoom del mapa |
| points | Optional | Array | Ubicación que abarca varios puntos si el tipo de area (area_type) es polygon |
| points.*.lng | Optional | Numeric | Longitud de punto |
| points.*.lat | Optional | Numeric | Latitud de punto |
| is_checkpoint | Optional | Boolean | Determina si es punto de control |
| custom_properties | Optional | Array | Parámetros custom adicionales |