Criar ambientes
Crie um novo ambiente ramificando a partir de um ambiente ativo existente. O processo clona a base de dados de origem e copia opcionalmente recursos de configuração.
Como criar
Seção intitulada “Como criar”- Abra o menu Seletor de ambiente na barra de navegação da Backend Console.
- Clique em + Criar ambiente.
- Aparece uma janela modal com as opções de configuração.
- Ramificar de: Ambiente de origem. Apenas ambientes
activedisponíveis. - Nome do ambiente: Nome único (ex.
staging,feature-auth). Apenas caracteres alfanuméricos, hífens e underscores.
Modo de ramo
Seção intitulada “Modo de ramo”- Full (schema + dados): Cópia completa incluindo dados. Para testes realistas.
- System (apenas schema): Apenas schema (tabelas, colunas, índices, relações, enums, vistas). Para ambientes vazios.
Copiar configuração
Seção intitulada “Copiar configuração”Opcional, requer role ProjectOwner:
- Provedores de armazenamento de arquivos (S3, GCS, Azure, Filestack)
- Rotas gateway e webhooks
- Config segurança (CORS, limites)
- Variáveis de ambiente
Nota: Provedores de autenticação estão excluídos por razões de segurança.
- Clique Criar ambiente.

Fluxo do branching
Seção intitulada “Fluxo do branching”- Validação do nome e estado de origem
- Criação do registo do ambiente
- Clonagem PostgreSQL (Full ou System)
- Provisionamento de credenciais
- Registo da configuração
- Cópia de recursos se selecionados
- Transição para estado
active
Rollback automático em caso de erro.
GraphQL API
Seção intitulada “GraphQL API”Mutation: branchEnvironment
Seção intitulada “Mutation: branchEnvironment”mutation BranchEnvironment($input: BranchEnvironmentInput!) { branchEnvironment(input: $input) { success message environment { id name parentId parentName branchMode branchedAt status createdAt updatedAt } }}Variables:
{ "input": { "projectId": "f7e4a264-d659-4719-91e8-c2d74654e529", "name": "staging", "sourceEnvironment": "master", "mode": "full", "copyFileProviders": true, "copyGatewayRoutes": true, "copySecurityConfig": false, "copyEnvironmentVariables": true }}Resposta:
{ "data": { "branchEnvironment": { "success": true, "message": "Environment created successfully", "environment": { "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "name": "staging", "parentId": "master-env-id", "parentName": "master", "branchMode": "full", "branchedAt": "2026-03-08T20:00:00Z", "status": "active", "createdAt": "2026-03-08T20:00:00Z", "updatedAt": "2026-03-08T20:00:05Z" } } }}Campos de entrada
Seção intitulada “Campos de entrada”| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
projectId | String | Sim | ID do projeto |
name | String | Sim | Nome do novo ambiente |
sourceEnvironment | String | Sim | Ambiente de origem |
mode | String | Sim | "full" ou "system" |
copyFileProviders | Boolean | Não | Copiar provedores de armazenamento |
copyGatewayRoutes | Boolean | Não | Copiar rotas gateway |
copySecurityConfig | Boolean | Não | Copiar CORS e limites |
copyEnvironmentVariables | Boolean | Não | Copiar variáveis |
Permissões
Seção intitulada “Permissões”- Sem flags de cópia: acesso padrão ao projeto.
- Com flags: role ProjectOwner necessária.