1
0

geojson y apidoc

This commit is contained in:
Jose
2025-08-13 08:20:24 +02:00
parent d2c3b4fd70
commit 1604f1d600
2 changed files with 482 additions and 481 deletions

View File

@@ -0,0 +1 @@
dh=39376f6548b4449fc0faf969d98f6f7a10af9e7e

View File

@@ -1,481 +1,481 @@
{ {
"name": "ContaminUS", "name": "ContaminUS",
"version": "1.0.0", "version": "1.0.0",
"logic_api": [ "logic_api": [
{ {
"method": "POST", "method": "POST",
"path": "/api/v1/batch", "path": "/api/v1/batch",
"description": "Añadir los valores de los sensores (batch)", "description": "Añadir los valores de los sensores (batch)",
"params": [ "params": [
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "sensorId", "name": "sensorId",
"type": "integer", "type": "integer",
"description": "ID del sensor", "description": "ID del sensor",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "lat", "name": "lat",
"type": "float", "type": "float",
"description": "Latitud", "description": "Latitud",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "lon", "name": "lon",
"type": "float", "type": "float",
"description": "Longitud", "description": "Longitud",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "temperature", "name": "temperature",
"type": "float", "type": "float",
"description": "Temperatura", "description": "Temperatura",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "humidity", "name": "humidity",
"type": "float", "type": "float",
"description": "Humedad", "description": "Humedad",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "pressure", "name": "pressure",
"type": "float", "type": "float",
"description": "Presión", "description": "Presión",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "value", "name": "value",
"type": "float", "type": "float",
"description": "Valor de CO", "description": "Valor de CO",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "timestamp", "name": "timestamp",
"type": "long", "type": "long",
"description": "Marca temporal del valor", "description": "Marca temporal del valor",
"in": "body", "in": "body",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/v1/groups/:groupId/devices/:deviceId/latest-values", "path": "/api/v1/groups/:groupId/devices/:deviceId/latest-values",
"description": "Obtener los últimos valores de un dispositivo", "description": "Obtener los últimos valores de un dispositivo",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/v1/groups/:groupId/devices/:deviceId/pollution-map", "path": "/api/v1/groups/:groupId/devices/:deviceId/pollution-map",
"description": "Obtener el mapa de contaminación de un dispositivo", "description": "Obtener el mapa de contaminación de un dispositivo",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/v1/groups/:groupId/devices/:deviceId/history", "path": "/api/v1/groups/:groupId/devices/:deviceId/history",
"description": "Obtener el histórico de un dispositivo", "description": "Obtener el histórico de un dispositivo",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/v1/groups/:groupId/devices/:deviceId/sensors/:sensorId/values", "path": "/api/v1/groups/:groupId/devices/:deviceId/sensors/:sensorId/values",
"description": "Obtener los valores de un sensor específico", "description": "Obtener los valores de un sensor específico",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "sensorId", "name": "sensorId",
"type": "integer", "type": "integer",
"description": "ID del sensor", "description": "ID del sensor",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/v1/groups/:groupId/devices/:deviceId/actuators/:actuator_id/status", "path": "/api/v1/groups/:groupId/devices/:deviceId/actuators/:actuator_id/status",
"description": "Obtener el estado de un actuador", "description": "Obtener el estado de un actuador",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "actuator_id", "name": "actuator_id",
"type": "integer", "type": "integer",
"description": "ID del actuador", "description": "ID del actuador",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "POST", "method": "POST",
"path": "/api/v1/groups/:groupId/devices/:deviceId/actuators/:actuatorId/status", "path": "/api/v1/groups/:groupId/devices/:deviceId/actuators/:actuatorId/status",
"description": "Crear un nuevo dispositivo en un grupo", "description": "Crear un nuevo dispositivo en un grupo",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "actuatorId", "name": "actuatorId",
"type": "string", "type": "string",
"description": "ID del actuador", "description": "ID del actuador",
"in": "body", "in": "body",
"required": true "required": true
} }
] ]
} }
], ],
"raw_api": [ "raw_api": [
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/groups", "path": "/api/raw/v1/groups",
"description": "Obtener todos los grupos" "description": "Obtener todos los grupos"
}, },
{ {
"method": "POST", "method": "POST",
"path": "/api/raw/v1/groups", "path": "/api/raw/v1/groups",
"description": "Crear un nuevo grupo", "description": "Crear un nuevo grupo",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "groupName", "name": "groupName",
"type": "string", "type": "string",
"description": "Nombre del grupo", "description": "Nombre del grupo",
"in": "body", "in": "body",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/groups/:groupId/devices", "path": "/api/raw/v1/groups/:groupId/devices",
"description": "Obtener todos los dispositivos de un grupo", "description": "Obtener todos los dispositivos de un grupo",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "POST", "method": "POST",
"path": "/api/raw/v1/groups/:groupId/devices", "path": "/api/raw/v1/groups/:groupId/devices",
"description": "Crear un nuevo dispositivo en un grupo", "description": "Crear un nuevo dispositivo en un grupo",
"params": [ "params": [
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "deviceName", "name": "deviceName",
"type": "string", "type": "string",
"description": "Nombre del dispositivo", "description": "Nombre del dispositivo",
"in": "body", "in": "body",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/groups/:groupId/devices/:deviceId", "path": "/api/raw/v1/groups/:groupId/devices/:deviceId",
"description": "Obtener un dispositivo de un grupo", "description": "Obtener un dispositivo de un grupo",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "PUT", "method": "PUT",
"path": "/api/raw/v1/groups/:groupId/devices/:deviceId", "path": "/api/raw/v1/groups/:groupId/devices/:deviceId",
"description": "Actualizar un dispositivo de un grupo", "description": "Actualizar un dispositivo de un grupo",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors", "path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors",
"description": "Obtener todos los sensores de un dispositivo", "description": "Obtener todos los sensores de un dispositivo",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "POST", "method": "POST",
"path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors", "path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors",
"description": "Crear un nuevo sensor", "description": "Crear un nuevo sensor",
"params": [ "params": [
{ {
"name": "sensorId", "name": "sensorId",
"type": "integer", "type": "integer",
"description": "ID del sensor", "description": "ID del sensor",
"in": "body", "in": "body",
"required": true "required": true
}, },
{ {
"name": "deviceName", "name": "deviceName",
"type": "string", "type": "string",
"description": "Nombre del dispositivo", "description": "Nombre del dispositivo",
"in": "body", "in": "body",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors/:sensorId", "path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors/:sensorId",
"description": "Obtener un sensor específico", "description": "Obtener un sensor específico",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "sensorId", "name": "sensorId",
"type": "integer", "type": "integer",
"description": "ID del sensor", "description": "ID del sensor",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "PUT", "method": "PUT",
"path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors/:sensorId", "path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors/:sensorId",
"description": "Actualizar un sensor específico", "description": "Actualizar un sensor específico",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "sensorId", "name": "sensorId",
"type": "integer", "type": "integer",
"description": "ID del sensor", "description": "ID del sensor",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors/:sensorId/values", "path": "/api/raw/v1/groups/:groupId/devices/:deviceId/sensors/:sensorId/values",
"description": "Obtener los valores de un sensor", "description": "Obtener los valores de un sensor",
"params": [ "params": [
{ {
"name": "groupId", "name": "groupId",
"type": "integer", "type": "integer",
"description": "ID del grupo", "description": "ID del grupo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "deviceId", "name": "deviceId",
"type": "integer", "type": "integer",
"description": "ID del dispositivo", "description": "ID del dispositivo",
"in": "path", "in": "path",
"required": true "required": true
}, },
{ {
"name": "sensorId", "name": "sensorId",
"type": "integer", "type": "integer",
"description": "ID del sensor", "description": "ID del sensor",
"in": "path", "in": "path",
"required": true "required": true
} }
] ]
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/v_latest_values", "path": "/api/raw/v1/v_latest_values",
"description": "Vista: últimos valores registrados" "description": "Vista: últimos valores registrados"
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/v_pollution_map", "path": "/api/raw/v1/v_pollution_map",
"description": "Vista: mapa de contaminación" "description": "Vista: mapa de contaminación"
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/v_sensor_history_by_device", "path": "/api/raw/v1/v_sensor_history_by_device",
"description": "Vista: histórico de sensores por dispositivo" "description": "Vista: histórico de sensores por dispositivo"
}, },
{ {
"method": "GET", "method": "GET",
"path": "/api/raw/v1/v_sensor_values", "path": "/api/raw/v1/v_sensor_values",
"description": "Vista: valores individuales de sensores" "description": "Vista: valores individuales de sensores"
} }
] ]
} }