Atualizar Tamanho do Armazenamento

Altera a capacidade de armazenamento do projeto.

Permissões necessárias

O aumento ou alteração de storage exige project.storage.update em project:<project-id>. Para consultar o uso, use project.metrics.read no mesmo projeto. owner tem acesso completo; assistant, member e API Keys precisam do scope da ação.

PATCH /v1/project/:id/storage/size

Limite de requisições: 5 por minuto (contado por IP de origem).

Parâmetros de Path

ParâmetroTipoDescrição
idstringID do projeto

Headers

HeaderObrigatórioDescrição
x-api-key ou AuthorizationSimAPI Key da organização ou token de usuário
x-organization-idCom token de usuárioOrganização ativa do projeto. Dispensável com API Key da organização
Content-Type: application/jsonSimNecessário para atualizar o tamanho do armazenamento

Body

CampoTipoObrigatórioDescrição
sizenumberSimTamanho do armazenamento em GB (mínimo 1, máximo 250)

Exemplo

{
  "size": 20
}

Resposta

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

Erros comuns

StatusCódigoQuando acontece
409STORAGE_UPDATE_NOT_ALLOWED_FOR_CONTRACTO projeto tem contrato mensal ou anual; só projetos com cobrança por hora alteram o armazenamento
409STORAGE_SIZE_CANNOT_DECREASEA nova capacidade é menor ou igual à capacidade atual
409STORAGE_UPDATE_NOT_ALLOWED_FOR_FREE_PLANO plano Free não permite alterar o armazenamento
409PROJECT_OPERATION_IN_PROGRESSO projeto tem outra operação em andamento
404—Projeto não encontrado

Obter Uso de Armazenamento

Retorna informações sobre o uso atual do armazenamento do projeto.

GET /v1/project/:id/storage/usage

Limite de requisições: 100 por minuto (contado por IP de origem). Retorna 404 quando o projeto não existe e, em projetos Analytics, 402 quando o plano não oferece métricas.

Parâmetros de Path

ParâmetroTipoDescrição
idstringID do projeto

Resposta

{
  "status": "success",
  "message": "get volume usage with success",
  "data": {
    "used": 5368709120,
    "capacity": 10737418240,
    "replica_count": 1
  }
}

used e capacity são números em bytes; replica_count é a quantidade de volumes medidos (em projetos Analytics, o número de instâncias).


Exemplos

Atualizar Tamanho do Armazenamento

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

Obter Uso de Armazenamento

curl -X GET "https://api.zenifra.com/v1/project/507f1f77bcf86cd799439011/storage/usage" \
  -H "x-api-key: sua-api-key" \
  -H "x-organization-id: sua-organization-id"

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}

# Atualizar tamanho do armazenamento
requests.patch(
    f"https://api.zenifra.com/v1/project/{PROJECT_ID}/storage/size",
    headers=headers,
    json={"size": 20}
)

# Obter uso de armazenamento
usage = requests.get(
    f"https://api.zenifra.com/v1/project/{PROJECT_ID}/storage/usage",
    headers=headers
).json()
print(usage)

Limites

  • Mínimo: 1 GB
  • Máximo: 250 GB

Observações

  • Para modelos de pagamento por hora, o armazenamento pode ser aumentado a qualquer momento
  • O armazenamento não pode ser reduzido
  • O custo adicional é calculado proporcionalmente ao tempo de uso
  • Projetos com contrato mensal ou anual não podem alterar o armazenamento (409)

Última atualização em

Nessa página