Dati GraphQL e file con regole di accesso

Definisci uno schema e interrogalo subito. Le regole per schema e per campo decidono chi può leggere e scrivere.

Schemi, regole e file in un unico servizio

GraphQL dal tuo schema

Aggiungi uno schema nell'editor visuale o come file JSON e pubblicalo. Blocks genera query, insert, insertMany, update, updateMany, delete e deleteMany, con filtri where e condizioni AND/OR.

Regole a livello di riga e di colonna

Rendi uno schema o un singolo campo pubblico, aperto a qualsiasi utente autenticato, oppure limitato da regole basate su ID, email, ruoli o permessi dell'utente e sui campi del record stesso.

Validazione a ogni scrittura

Aggiungi ai campi controlli con regex, lunghezza, intervallo e confronto. Descrivi un pattern in linguaggio naturale e Blocks scrive la regex per te.

File con cartelle, versioni e condivisione

Carica tramite URL pre-firmati, conserva ogni versione, sposta e copia i file senza duplicare i byte, condividi con accesso View, Download, Edit o Manage e ripristina dal cestino.

MongoDB gestito o il tuo

Usa il database che Blocks gestisce per ogni ambiente, oppure collega il progetto al tuo cluster MongoDB Atlas.

Playground e browser dei dati

Prova le query con l'introspezione nel Data Playground e sfoglia i record come tabella o JSON, con filtri e ordinamento.

Definiscilo una volta, interrogalo dalla tua app

Tieni schemi e regole nel tuo repo come JSON, sincronizzali con la CLI e richiamali dalla tua app con l'SDK.

  1. Scarica gli schemi

    blocks data schema pull scrive ogni schema in blocks/data/schemas come JSON, così le modifiche passano dalla code review.

  2. Sincronizza e ricarica

    blocks data sync invia le modifiche a schemi e regole e ricarica il gateway. Eseguilo prima con --dry-run per vedere il piano.

  3. Leggi e scrivi dalla tua app

    data.collection() ti dà list, get, create, update e delete per uno schema. Usa data.graphql() per join e query con strutture personalizzate.

# Keep schemas in git as JSON
blocks data schema pull --json

# Push schema and rule changes, then reload the gateway
blocks data sync --dry-run --json
blocks data sync --yes --json

# Upload a private file
blocks data files upload --file ./invoice.pdf --parent-id <directoryId> \
  --configuration-name Default --access-modifier Private --dry-run --json

Database e archiviazione

  • MongoDB Atlas
  • Azure Blob Storage
  • Amazon S3
  • S3-compatible (MinIO)
  • SFTP

Domande su Data

Quali database supporta Data?

MongoDB. Ogni ambiente ha un database gestito da Blocks, oppure puoi collegare il tuo cluster MongoDB Atlas con un URL di connessione e il nome del database.

Come funzionano le regole di accesso?

Ogni schema e ogni campo ha una policy: pubblica, qualsiasi utente autenticato, oppure regole personalizzate che confrontano ID, email, ruoli o permessi dell'utente con i campi del record. Il gateway le applica a ogni query e mutazione.

Dove vengono salvati i file?

Su Azure Blob Storage per impostazione predefinita. Puoi aggiungere Amazon S3, uno storage compatibile S3 come MinIO o un server SFTP come configurazioni di archiviazione con nome, e sceglierne una per ogni upload.

Le modifiche allo schema richiedono un nuovo deploy?

No. Pubblica lo schema nella console o esegui blocks data sync, e il gateway si ricarica con i nuovi campi.

Inizia con un progetto gratuito

Registrati su os.seliseblocks.com e crea un progetto, oppure incolla un prompt in Claude Code, Codex o Cursor e lascia che il tuo agente lo configuri tramite la CLI di Blocks.