- Drizzle ORM to manage migrations and as a query builder
- Cloudflare Worker (Cheap to run, Blazing fast and great DX)
- Hono.js lightweight fast framework for the edges (great with cloudflare workers)
- Neon.tech to manage serverless postgres
Nodejs >= 20
npm install
npm run dev
Dont forget to rename file called .env.vars.example > .env.vars.
Este documento describe la API REST para la gestión de dispositivos. La API permite crear, consultar, actualizar y eliminar dispositivos del sistema.
La API dispone de los siguientes recursos:
/cableModem:
Representa el recurso principal de dispositivos.
Métodos HTTP soportados
La API soporta los siguientes métodos HTTP:
GET:
Recupera información sobre los dispositivos.POST:
Crea un nuevo dispositivo.PUT:
Actualiza un dispositivo existente.DELETE:
Elimina un dispositivo existente (devuelve código de estado 204 No Content).
N/A
{
"id": "string" (opcional),
"name": "string",
"description": "string",
"status": "string",
"validSince": "string (YYYY-MM-DDTHH:mm:ss.sssZ)",
"tags": ["string", ...]
}
id:
uuid del dispositivo en la base de datos (opcional)name:
nombre del dispositivodescription:
descripcion del dispositivostatus:
Estado del dispositivo (ej: "activo", "suspendido", etc).validSince:
Fecha y hora en formato UTC desde la cual el dispositivo es válido (ej: "2024-05-05T21:26:23.758Z")tags:
Arreglo de etiquetas asociadas al dispositivo
-
Codigo de estado:
- 200: La solicitud se realizo con exito
- 500: Error en la solicitud
-
Estructura
[
{
"id": "string (UUID)",
"name": "string",
"description": "string",
"status": "string",
"validSince": "string (YYYY-MM-DDTHH:mm:ss.sssZ)",
"tags": ["string", ...]
},
...
]
[
{
"id": "string (UUID)",
"name": "string",
"description": "string",
"status": "string",
"validSince": "string (YYYY-MM-DDTHH:mm:ss.sssZ)",
"tags": ["string", ...]
},
...
]
- Codigo de estado:
- 200: La solicitud se realizo con exito
- 404: Not Found
- 500: Error en la solicitud
{
"id": "string (UUID)",
"name": "string",
"description": "string",
"status": "string",
"validSince": "string (YYYY-MM-DDTHH:mm:ss.sssZ)",
"tags": ["string", ...]
}
-
Codigo de estado:
- 201: La solicitud se realizo con exito
- 400: Bad Request
- 500: Error en la solicitud
-
Estructura
{
"name": "string",
"description": "string",
"status": "string",
"validSince": "string (YYYY-MM-DDTHH:mm:ss.sssZ)",
"tags": ["string", ...]
}
{
"id": "string (UUID)",
"name": "string",
"description": "string",
"status": "string",
"validSince": "string (YYYY-MM-DDTHH:mm:ss.sssZ)",
"tags": ["string", ...]
}
-
Codigo de estado:
- 200: La solicitud se realizo con exito
- 400: Bad Request
- 500: Error en la solicitud
-
Estructura
{
"name": "string",
"description": "string",
"status": "string",
"validSince": "string (YYYY-MM-DDTHH:mm:ss.sssZ)",
"tags": ["string", ...]
}
{
"id": "8d7c86d0-b18e-49e7-90b8-2a8f7200fc44",
"name": "string",
"description": "string",
"status": "string",
"validSince": "string (YYYY-MM-DDTHH:mm:ss.sssZ)",
}
- Codigo de estado:
- 204: No Content
- 404: Not found