Documentación de Espobase
Espobase está en acceso anticipado. Estas páginas describen cómo funciona la plataforma; las guías detalladas y las referencias de API se escriben a medida que se lanza cada función.
Primeros pasos
- Crea una cuenta y una organización.
- Crea un proyecto. Tendrá su propia base de datos dedicada.
- Crea tablas en el Editor de tablas o describe tu app al creador con IA.
- Llama a tu API REST con la clave publicable del proyecto.
curl "<project URL>/rest/v1/todos?select=*" \ -H "apikey: <publishable key>"
Proyectos
Un proyecto es el backend de una app: su propia base de datos PostgreSQL, API REST, claves de API y usuarios de la app (App Authentication). Los proyectos pertenecen a una organización.
Base de datos
Cada proyecto recibe una base de datos PostgreSQL 18 dedicada. Las tablas del esquema public se exponen a través de la API REST; las políticas de seguridad a nivel de fila deciden quién puede leer o cambiar cada fila.
API REST
Cada tabla tiene endpoints bajo la URL REST de tu proyecto (…/project/<project-ref>/rest/v1, que aparece en la página API del proyecto). Envía una clave publicable (eb_pk_…) desde navegadores y apps; sus solicitudes son anónimas y la seguridad a nivel de fila decide qué pueden ver. Agrega el token de acceso de un usuario que inició sesión como Authorization: Bearer para hacer solicitudes como ese usuario. Las claves secretas (eb_sk_…) omiten los controles de acceso por usuario y solo deben usarse en servidores de confianza.
Autenticación
App Authentication de Espobase permite que los usuarios de tu app se registren e inicien sesión con correo y contraseña, de forma independiente de tu cuenta de Espobase. Los usuarios viven en la base de datos de tu proyecto. Al iniciar sesión se obtiene un token de acceso de corta duración (firmado con la clave propia de tu proyecto) y un token de actualización rotativo; el SDK @espobase/client los mantiene vigentes y envía el token con cada solicitud, así que la seguridad a nivel de fila ve al usuario como autenticado. Sin un token de usuario, las solicitudes con la clave publicable son anónimas. Las claves secretas actúan como un rol de servicio del lado del servidor y solo deben usarse en servidores de confianza.
Seguridad a nivel de fila
La seguridad a nivel de fila está activada en cada tabla nueva, ya sea que la crees en el Editor de tablas, el Editor SQL, una migración o el creador con IA. Hasta que agregues políticas en Base de datos → Políticas, las claves publicables no ven ninguna fila; las claves secretas (solo del lado del servidor) lo ven todo. Siempre revisas el SQL generado antes de que se ejecute. Public read funciona para todos. Authenticated only, User owns row, Organization membership y Admin only se aplican a usuarios que iniciaron sesión con App Authentication: espobase.user_id() es el id del usuario que inició sesión y espobase.app_role() su rol en la app, ambos tomados del token verificado. Organization membership también necesita tu propia tabla de membresías (con una política que permita a los usuarios leer sus propias membresías), y Admin only necesita roles de la app que asignes en el servidor.
Almacenamiento
Los buckets guardan archivos. El acceso sigue el mismo modelo de seguridad a nivel de fila que tus tablas.
Tiempo real
Actualizaciones en vivo para tu app con espobase.realtime: envía mensajes a todos los que están en un canal, mira quién está conectado con la presencia y recibe los cambios de filas de las tablas que actives en Tiempo real, en el panel. Cada suscriptor recibe solo las filas que su usuario puede leer según las reglas de seguridad de la tabla; las eliminaciones envían solo la clave primaria de la fila. Consulta la guía completa en espobase.com/docs/realtime.
Edge Functions
Tu propio código de servidor con espobase.functions: funciones TypeScript que despliegas desde el panel o la CLI, para webhooks, pagos, correos y otras tareas de servidor. Las funciones de cada proyecto se ejecutan en su propio entorno aislado; los secretos se guardan cifrados, los usuarios con sesión iniciada se verifican por ti y la salida de cada llamada aparece en Registros. Consulta la guía completa en espobase.com/docs/functions.
Hosting
Publica el front end de tu app junto a su backend: compila tu sitio, publica la carpeta desde el panel o con `espobase deploy` y estará en línea en `https://<nombre>.espohost.com` con HTTPS. Cada despliegue se conserva, así que puedes volver atrás con un clic. Disponible en Pro y Group. Consulta la guía completa en espobase.com/docs/hosting.
Creador de backend con IA
Describe tu app y Espobase propone tablas, relaciones y políticas. Tú revisas cada instrucción; nada se ejecuta sin tu aprobación.
Búsqueda vectorial
Cada proyecto incluye pgvector: guarda embeddings en columnas vector, indéxalos con HNSW y busca por similitud con una función de base de datos que llamas a través de la API REST o de espobase.rpc(). Se aplica la seguridad a nivel de fila. Consulta la guía completa en espobase.com/docs/vector.
CLI
npx espobase login y luego npx espobase init: vincula una carpeta a un proyecto, genera tipos de TypeScript, ejecuta consultas de solo lectura y revisa registros y uso desde tu terminal. Consulta la guía completa en espobase.com/docs/cli.
Conecta herramientas de IA (MCP)
Usa Espobase desde Claude, ChatGPT, Cursor o VS Code: leen tu esquema, la referencia de API, los registros y el uso, ejecutan consultas de solo lectura y proponen cambios que tú apruebas. Consulta la guía completa en espobase.com/docs/ai-tools.