Documentazione di Espobase
Espobase è in accesso anticipato. Queste pagine descrivono come funziona la piattaforma; guide dettagliate e riferimenti API vengono scritti man mano che ogni funzione viene rilasciata.
Per iniziare
- Crea un account e un'organizzazione.
- Crea un progetto. Avrà il suo database dedicato.
- Crea tabelle nell'Editor tabelle o descrivi la tua app al builder AI.
- Chiama la tua API REST con la chiave pubblicabile del progetto.
curl "<project URL>/rest/v1/todos?select=*" \ -H "apikey: <publishable key>"
Progetti
Un progetto è il backend di un'app: il suo database PostgreSQL, API REST, chiavi API e utenti dell'app (App Authentication). I progetti appartengono a un'organizzazione.
Database
Ogni progetto riceve un database PostgreSQL 18 dedicato. Le tabelle dello schema public sono esposte tramite l'API REST; le policy di sicurezza a livello di riga decidono chi può leggere o modificare ogni riga.
API REST
Ogni tabella ha i suoi endpoint sotto l'URL REST del progetto (…/project/<project-ref>/rest/v1, mostrato nella pagina API del progetto). Invia una chiave pubblicabile (eb_pk_…) da browser e app; le sue richieste sono anonime e la sicurezza a livello di riga decide cosa possono vedere. Aggiungi il token di accesso di un utente che ha effettuato l'accesso come Authorization: Bearer per eseguire le richieste come quell'utente. Le chiavi segrete (eb_sk_…) ignorano i controlli di accesso per utente e vanno usate solo su server affidabili.
Autenticazione
App Authentication di Espobase permette agli utenti della tua app di registrarsi e accedere con email e password, separatamente dal tuo account Espobase. Gli utenti stanno nel database del tuo progetto. L'accesso restituisce un token di accesso di breve durata (firmato con la chiave del tuo progetto) e un refresh token a rotazione; l'SDK @espobase/client li mantiene aggiornati e invia il token con ogni richiesta, così la sicurezza a livello di riga vede l'utente come autenticato. Senza un token utente, le richieste con la chiave pubblicabile sono anonime. Le chiavi segrete agiscono come un ruolo di servizio lato server e vanno usate solo su server affidabili.
Sicurezza a livello di riga
La sicurezza a livello di riga è attiva su ogni nuova tabella, che tu la crei nell'Editor tabelle, nell'Editor SQL, con una migrazione o con il builder AI. Finché non aggiungi policy in Database → Policy, le chiavi pubblicabili non vedono nessuna riga; le chiavi segrete (solo lato server) vedono tutto. Rivedi sempre l'SQL generato prima che venga eseguito. Lettura pubblica funziona per tutti. Solo utenti che hanno effettuato l'accesso, L'utente è proprietario della riga, Appartenenza all'organizzazione e Solo amministratori si applicano agli utenti che hanno effettuato l'accesso con App Authentication: espobase.user_id() è l'id dell'utente che ha effettuato l'accesso ed espobase.app_role() il suo ruolo nell'app, entrambi presi dal token verificato. Appartenenza all'organizzazione richiede anche una tua tabella delle appartenenze (con una policy che permetta agli utenti di leggere le proprie appartenenze), e Solo amministratori richiede ruoli dell'app che assegni sul server.
Archiviazione
I bucket contengono file. L'accesso segue lo stesso modello di sicurezza a livello di riga delle tue tabelle.
Realtime
Aggiornamenti in tempo reale per la tua app con espobase.realtime: invia messaggi a tutti su un canale, vedi chi è online con la presenza e ricevi le modifiche delle righe delle tabelle che attivi in Realtime nella dashboard. Ogni iscritto riceve solo le righe che il suo utente può leggere secondo le regole di sicurezza della tabella; le eliminazioni inviano solo la chiave primaria della riga. Guida completa su espobase.com/docs/realtime.
Edge Functions
Il tuo codice server con espobase.functions: funzioni TypeScript che distribuisci dalla dashboard o dalla CLI, per webhook, pagamenti, email e altri lavori lato server. Le funzioni di ogni progetto girano in un ambiente isolato; i segreti sono salvati cifrati, gli utenti che hanno effettuato l'accesso vengono verificati per te e l'output di ogni chiamata compare nei Log. Guida completa su espobase.com/docs/functions.
Hosting
Pubblica il front end della tua app accanto al backend: compila il sito, pubblica la cartella dalla dashboard o con `espobase deploy` e sarà online su `https://<nome>.espohost.com` con HTTPS. Ogni deploy viene conservato, così puoi tornare indietro con un clic. Disponibile nei piani Pro e Group. Guida completa su espobase.com/docs/hosting.
Builder AI per il backend
Descrivi la tua app ed Espobase propone tabelle, relazioni e policy. Rivedi ogni istruzione; nulla viene eseguito senza la tua approvazione.
Ricerca vettoriale
Ogni progetto include pgvector: salva embedding in colonne vector, indicizzali con HNSW e cerca per similarità con una funzione del database chiamata tramite l'API REST o espobase.rpc(). Si applica la sicurezza a livello di riga. Leggi la guida completa su espobase.com/docs/vector.
CLI
npx espobase login, poi npx espobase init: collega una cartella a un progetto, genera tipi TypeScript, esegui query di sola lettura e controlla log e utilizzo dal terminale. Leggi la guida completa su espobase.com/docs/cli.
Collega strumenti AI (MCP)
Usa Espobase da Claude, ChatGPT, Cursor o VS Code: leggono il tuo schema, il riferimento API, i log e l'utilizzo, eseguono query di sola lettura e propongono modifiche che approvi tu. Leggi la guida completa su espobase.com/docs/ai-tools.