Pular para o conteúdo
⚙️ HOW-TO

Como criar um projeto

Passo a passo para criar um projeto SuperDB pelo dashboard ou via API REST.

O que é um projeto SuperDB

Um projeto é a unidade de isolamento da plataforma. Cada projeto possui:

  • Um schema Postgres exclusivo (proj_<slug>)
  • API keys próprias (anon key e service key)
  • Configurações de auth independentes (providers, MFA, templates)
  • Buckets de storage isolados
  • Logs e métricas separados

Pelo dashboard

  1. Acesse app.superdb.com.br e faça login com sua conta.
  2. No menu lateral, clique em Projetos.
  3. Clique no botão + Novo Projeto no canto superior direito.
  4. Preencha os campos:
    • Nome: nome legível do projeto (ex: "Acme Corp")
    • Slug: identificador URL-safe (ex: acme). Será usado no nome do schema.
    • Plano: Free, Pro ou Scale.
  5. Clique em Criar projeto. O provisioning inicia automaticamente.
  6. Aguarde o status mudar de Provisionando… para Ativo (normalmente 2–5 segundos).
💡

Slug imutável: o slug não pode ser alterado após a criação, pois é o nome do schema Postgres. Escolha com cuidado.

Criando projetos por API (SaaS multi-tenant)

Se o seu produto cria um ambiente isolado por cliente (um SaaS multi-tenant), você não precisa abrir o dashboard a cada novo cliente: crie um Group, gere uma Group API Key (sdb_gk_…) e provisione por API.

bash — provisionar um tenant isolado
curl -X POST https://auth.superdb.com.br/groups/v1/$GROUP_ID/tenants \
  -H "Authorization: Bearer $SUPERDB_GROUP_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "slug": "acme", "name": "Acme Corp" }'

Cada tenant vira um schema Postgres isolado, com as próprias keys. Passo a passo completo em Provisionar um tenant.

⚠️

Para um projeto avulso (não multi-tenant), a criação é pelo dashboard — não há endpoint público de criação de projeto com API key.

O que acontece nos bastidores

Ao criar um projeto, o sistema executa automaticamente:

  1. CREATE SCHEMA proj_<slug> no banco de dados
  2. Cria a role Postgres isolada proj_<slug>_service
  3. Aplica GRANTs de segurança (service role só acessa seu schema)
  4. Gera as API keys do projeto (anon e service_role), assinadas em ES256 com um par de chaves exclusivo desse projeto
  5. Insere o registro em proj_management.projects
  6. Cria o bucket padrão public no Storage

Troubleshooting

Projeto não aparece na lista

Aguarde alguns segundos e recarregue a página — o provisionamento leva de 2 a 5 segundos.

Erro ao criar: slug inválido ou duplicado

O slug aceita apenas letras minúsculas, números e _, precisa começar com letra e ser único na plataforma. Se o nome desejado já existe, escolha outro — o slug vira o nome do schema Postgres e é imutável.

Continua travado em "Provisionando…"

Se passar de um minuto, fale com o suporte informando o slug: é um caso de provisionamento parcial, que a equipe reverte e refaz.

Essa página ajudou?