Uso y referencia API
Referencia rápida de NodusAPI. La API completa está disponible tras iniciar sesión en el dashboard.
Ver documentación
Mira cómo usar NodusAPI en este breve vídeo.
Autenticación
- API Key (header X-API-Key). Una clave por usuario, válida para todos los proyectos. Usa el slug del proyecto en la ruta: /api/v1/projectSlug/...
- Bearer JWT. Usado por el dashboard. El contexto del proyecto está en el token.
Endpoints principales
- GET /health — Comprobación de estado.
- Auth (login Google, /auth/me).
- Proyectos (CRUD, cambiar).
- Esquemas (tablas, columnas).
- Datos (CRUD por tabla).
- Endpoints personalizados (fn/:slug). Escribe JavaScript, usa request y db.
Endpoints personalizados
En el dashboard puedes añadir endpoints personalizados: escribes JavaScript con acceso a request (body, query, method, headers) y db (query, get, insert, update, delete). La respuesta es lo que devuelvas.
Los ejemplos usan el slug de tabla products. Sustituye por el slug de tu tabla (página Tablas).
Request
request.body — JSON parseado para POST/PUT.request.query — Parámetros de consulta URL (ej. ?id=123).request.method — GET, POST, PUT, DELETE.request.headers — Cabeceras de la petición.
Base de datos (db)
db.query(tableSlug, options) — listar filas (options: page, limit, orderBy, orderDir, filters).db.get(tableSlug, id) — obtener una fila por id.db.insert(tableSlug, data) — crear fila.db.update(tableSlug, id, data) — actualizar fila.db.delete(tableSlug, id) — eliminar fila.
Ejemplos
Retorno simple
Devolver un objeto fijo.
return { message: 'Hello' };Eco de parámetros query
Devolver la query string de la URL como JSON.
return { query: request.query };Eco del body de la petición
Devolver el body de la petición (POST/PUT).
return { received: request.body };Listar filas de tabla
Lista paginada de una tabla (ej. products).
const rows = await db.query('products', { page: 1, limit: 20 });
return { data: rows };Obtener una fila por id
Leer id de query, obtener fila con db.get.
const id = request.query.id;
if (!id) return { error: 'id required' };
return await db.get('products', id);Crear fila desde body
Insertar request.body en la tabla.
const row = await db.insert('products', request.body);
return { data: row };Actualizar fila por id
Leer id de query, actualizar con request.body.
const id = request.query.id;
if (!id) return { error: 'id required' };
return await db.update('products', id, request.body);Gestiona proyectos, obtén tu API key y consulta la documentación completa en el dashboard.