Pular para o conteúdo
⚙️ HOW-TO

Como criar um projeto

Passo a passo para criar um projeto SuperDB via Admin UI 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

Via Admin UI

  1. Acesse admin.superdb.com.br e faça login com sua conta platform_admin.
  2. No menu lateral, clique em Platform → 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.
    • Owner email: email do usuário dono do projeto (cliente final).
    • 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.

Via API

Você também pode criar projetos programaticamente. Necessita de um JWT de platform_admin.

bash — criar projeto via API
curl -X POST https://superdb.com.br/platform/v1/projects \
  -H "Authorization: Bearer $PLATFORM_ADMIN_JWT" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Acme Corp",
    "slug": "acme",
    "owner_email": "dev@acme.com.br",
    "plan": "pro"
  }'
json — resposta
{
  "id": "proj_01HXZ...",
  "name": "Acme Corp",
  "slug": "acme",
  "status": "active",
  "anon_key": "eyJ...",
  "service_key": "eyJ...",
  "created_at": "2026-05-14T10:00:00Z"
}

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 (anon key e service key) assinadas com o JWT_SECRET
  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 5 segundos e recarregue a página. Se persistir, verifique em Platform → Audit Log se a criação foi registrada. Erros de provisioning aparecem no log com status error.

Provisioning travado em "Provisionando…"

Verifique os logs do serviço de auth:

bash
docker logs auth --tail=50 | grep "provision"

Causas comuns: conexão com o banco caiu, slug com caracteres inválidos (use apenas letras minúsculas, números e hífens), ou slug duplicado.

Essa página ajudou?