Buckets
Um bucket guarda arquivos com as mesmas regras: quem pode enviar e ler, tamanho máximo, extensões aceitas. Crie pelo console (Storage → Criar bucket) ou pelo servidor:
import { Permission, Role, Storage } from '@owbase/node';import { client } from './client';
// A chave precisa do escopo buckets.write.const storage = new Storage(client);
await storage.createBucket({ bucketId: 'fotos', name: 'Fotos', // Usuários logados enviam; quem pode ler cada foto vai nas permissões do arquivo. permissions: [Permission.create(Role.users())], fileSecurity: true, maximumFileSize: 5_000_000, allowedFileExtensions: ['jpg', 'jpeg', 'png', 'webp'],});Configurações
Seção intitulada “Configurações”| Opção | O que faz |
|---|---|
permissions |
permissões do bucket inteiro (create para quem pode enviar, read para quem pode ler todos os arquivos) |
fileSecurity |
Permissões por arquivo: cada arquivo pode ter permissões próprias, somadas às do bucket |
maximumFileSize |
teto por arquivo, em bytes (no máximo o limite da plataforma, 30 MB) |
allowedFileExtensions |
só estas extensões (vazio aceita todas) |
compression |
Compression.Gzip ou Compression.Zstd para guardar comprimido (arquivos de até 20 MB) |
encryption |
guarda criptografado (arquivos de até 20 MB) |
enabled |
bucket desligado recusa envio e leitura pelos clientes |
O padrão “cada usuário vê só os próprios arquivos” é o mesmo do banco: Permission.create(Role.users()) no bucket, permissões por arquivo ligadas e, em cada envio, leitura para Role.user(<id>) (Permissões e papéis).