Obter Variáveis de Ambiente
Retorna as variáveis de ambiente configuradas no projeto.
Permissões necessárias
A leitura exige project.env.read em project:<project-id>. A alteração exige project.env.update no mesmo projeto. owner tem acesso completo; assistant, member e API Keys precisam do scope específico. Os valores podem ser sensíveis e não devem aparecer em logs.
GET /v1/project/:id/envsLimite de requisições: 50 por minuto (contado por IP de origem).
Parâmetros de Path
| Parâmetro | Tipo | Descrição |
|---|---|---|
id | string | ID do projeto |
Headers
| Header | Obrigatório | Descrição |
|---|---|---|
x-api-key ou Authorization | Sim | API Key da organização ou token de usuário |
x-organization-id | Com token de usuário | Organização ativa do projeto. Dispensável com API Key da organização |
Content-Type: application/json | Condicional | Necessário apenas nas chamadas PATCH |
Resposta
Valores de variáveis de ambiente podem conter dados sensíveis. Trate esta resposta como sensível porque os valores retornados pela API podem estar disponíveis em texto claro para qualquer credencial com a permissão project.env.read.
{
"status": "success",
"message": "get envs with success",
"data": [
{
"name": "DATABASE_URL",
"value": "postgres://user:pass@host:5432/db"
},
{
"name": "NODE_ENV",
"value": "production"
}
]
}Atualizar Variáveis de Ambiente
Atualiza as variáveis de ambiente do projeto.
A lista enviada substitui todas as variáveis atuais: variáveis que ficarem de fora são removidas. Para alterar uma única variável, leia a lista com GET, ajuste o item e envie a lista completa. A alteração reinicia as instâncias da aplicação e gera um registro no histórico de deployments.
PATCH /v1/project/:id/envsLimite de requisições: 20 por minuto (contado por IP de origem).
Parâmetros de Path
| Parâmetro | Tipo | Descrição |
|---|---|---|
id | string | ID do projeto |
Body
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
envs | array | Sim | Array de objetos com name e value (máximo 50 variáveis, cada nome máximo 120 caracteres, cada valor máximo 32760 caracteres) |
Exemplo
{
"envs": [
{
"name": "DATABASE_URL",
"value": "postgres://user:pass@host:5432/db"
},
{
"name": "API_KEY",
"value": "nova-api-key"
}
]
}Resposta
{
"status": "success",
"message": "updated with success"
}Erros
| Status | Quando ocorre |
|---|---|
400 | Corpo inválido (por exemplo, acima dos limites desta página) |
404 | Projeto não encontrado |
409 | O projeto não está em execução (project is not running) |
Exemplos
Obter Variáveis de Ambiente
curl -X GET "https://api.zenifra.com/v1/project/507f1f77bcf86cd799439011/envs" \
-H "x-api-key: sua-api-key" \
-H "x-organization-id: sua-organization-id"Atualizar Variáveis de Ambiente
curl -X PATCH "https://api.zenifra.com/v1/project/507f1f77bcf86cd799439011/envs" \
-H "x-api-key: sua-api-key" \
-H "x-organization-id: sua-organization-id" \
-H "Content-Type: application/json" \
-d '{"envs": [{"name": "NODE_ENV", "value": "production"}]}'Python
import requests
API_KEY = "sua-api-key"
ORGANIZATION_ID = "sua-organization-id"
PROJECT_ID = "507f1f77bcf86cd799439011"
headers = {"x-api-key": API_KEY, "x-organization-id": ORGANIZATION_ID}
# Obter variáveis de ambiente
envs = requests.get(
f"https://api.zenifra.com/v1/project/{PROJECT_ID}/envs",
headers=headers
).json()
print(envs)
# Atualizar variáveis de ambiente
requests.patch(
f"https://api.zenifra.com/v1/project/{PROJECT_ID}/envs",
headers=headers,
json={
"envs": [
{"name": "NODE_ENV", "value": "production"},
{"name": "DATABASE_URL", "value": "postgres://user:pass@host:5432/db"}
]
}
)Limites
- Máximo de 50 variáveis de ambiente por projeto
- Cada nome pode ter até 120 caracteres
- Cada valor pode ter até 32760 caracteres
Última atualização em