Obter Informações do Projeto

Retorna o estado atual do projeto, incluindo status, plano, domínio, instâncias, storage, porta, configurações públicas de deploy e informações adicionais por tipo de projeto.

GET /project/:id

Parâmetros de Path

ParâmetroTipoDescrição
idstringID do projeto (ObjectId)

Headers

HeaderObrigatórioDescrição
x-api-keySimAPI Key do projeto
x-organization-idSimOrganização ativa do projeto
Content-Type: application/jsonCondicionalNecessário apenas nas chamadas PATCH

Resposta

O exemplo abaixo é reduzido para destacar os campos mais usados. A resposta também pode incluir campos como github, image, last_deployment, total_amount_used, renew_automatic_contract, custom_domains, network_access, build_failure, updated_at e created_at.

{
  "status": "success",
  "message": "get deployment with success",
  "data": {
    "name": "meu-projeto",
    "description": "Minha aplicação web",
    "domain": "meu-projeto.clients.zenifra.com",
    "plan": "basic",
    "status": "running",
    "type_project": "http",
    "instances": 2,
    "storage": {
      "persistent": false,
      "capacity": 1
    },
    "payment_mode": "hourly",
    "port": 3000,
    "additional_info": {
      "current_instances": 2,
      "max_cpu": "1",
      "max_memory": "1Gi"
    }
  }
}

Atualizar Nome do Projeto

Altera o nome do projeto.

PATCH /project/:id/name

Parâmetros de Path

ParâmetroTipoDescrição
idstringID do projeto (ObjectId)

Body

CampoTipoObrigatórioDescrição
namestringSimNovo nome do projeto (mínimo 6 caracteres, máximo 32, apenas letras minúsculas e números, pode usar hífen)

Exemplo

{
  "name": "meu-novo-projeto"
}

Resposta

{
  "status": "success",
  "message": "updated with success"
}

Atualizar Descrição do Projeto

Altera a descrição do projeto.

PATCH /project/:id/description

Parâmetros de Path

ParâmetroTipoDescrição
idstringID do projeto (ObjectId)

Body

CampoTipoObrigatórioDescrição
descriptionstringNãoNova descrição do projeto (máximo 256 caracteres)

Resposta

{
  "status": "success",
  "message": "updated with success"
}

Exemplos

Atualizar Nome

curl -X PATCH "https://api.zenifra.com/v1/project/507f1f77bcf86cd799439011/name" \
  -H "x-api-key: sua-api-key" \
  -H "x-organization-id: sua-organization-id" \
  -H "Content-Type: application/json" \
  -d '{"name": "meu-novo-projeto"}'

Atualizar Descrição

curl -X PATCH "https://api.zenifra.com/v1/project/507f1f77bcf86cd799439011/description" \
  -H "x-api-key: sua-api-key" \
  -H "x-organization-id: sua-organization-id" \
  -H "Content-Type: application/json" \
  -d '{"description": "Minha aplicação web em produção"}'

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 informações
project = requests.get(
    f"https://api.zenifra.com/v1/project/{PROJECT_ID}",
    headers=headers
).json()
print(project)

# Atualizar nome
requests.patch(
    f"https://api.zenifra.com/v1/project/{PROJECT_ID}/name",
    headers=headers,
    json={"name": "meu-novo-projeto"}
)

# Atualizar descrição
requests.patch(
    f"https://api.zenifra.com/v1/project/{PROJECT_ID}/description",
    headers=headers,
    json={"description": "Minha aplicação web em produção"}
)