Pular para o conteúdo

Conta (referência)

Plano e consumo

Plano do time e o uso de serviços, memória, volumes, bancos e deploys por hora. used > max nunca acontece: ao atingir, a criação responde 422 quota_exceeded e um novo deploy responde 429 rate_limited com Retry-After.

Qualquer token válido (nenhum escopo específico).

Escopo exigido: - · operationId: getLimits

Limites.

Campo Tipo Obrig. Descrição
plan string sim
services object sim
services.used integer sim
services.max integer sim
memory_mb object sim
memory_mb.used integer sim
memory_mb.max integer sim
volumes_gb object sim
volumes_gb.used integer sim
volumes_gb.max integer sim
databases object sim
databases.used integer sim
databases.max integer sim
deploys_per_hour object sim
deploys_per_hour.used integer sim
deploys_per_hour.max integer sim
{
"plan": "pro",
"services": {
"used": 3,
"max": 20
},
"memory_mb": {
"used": 1536,
"max": 8192
},
"volumes_gb": {
"used": 5,
"max": 50
},
"databases": {
"used": 1,
"max": 5
},
"deploys_per_hour": {
"used": 2,
"max": 60
}
}

Corpo {"error", "message", "details"?} (veja Autenticação e visão geral e a tabela de erros): 401 Token ausente, inválido, expirado ou revogado. A resposta é genérica de propósito; 429 Limite de requisições excedido. Espere Retry-After segundos; 500 Falha interna (internal). O detalhe fica só no log do servidor; repita depois, e informe o Idempotency-Key ao suporte se persistir; 503 Serviço (ex.: scanner ou borda) temporariamente indisponível. Tente de novo após Retry-After.

Quem é o token

Devolve o token (id, nome, escopos, projetos permitidos, validade) e o time. Use para descobrir o que o token pode fazer antes de agir.

Qualquer token válido (nenhum escopo específico).

Escopo exigido: - · operationId: getMe

Token e time.

Campo Tipo Obrig. Descrição
token object sim
token.id string sim
token.name string sim
token.scopes array sim
token.project_ids array|null sim null = token com acesso a todos os projetos do time.
token.expires_at string não
team object sim
team.id string sim
team.name string sim
team.plan string sim
{
"token": {
"id": "01jb7kd15q8r7t2v4w6x8y0a3m",
"name": "agente-deploy",
"scopes": [
"projects:read",
"projects:write",
"deploy"
],
"project_ids": null,
"expires_at": "2027-01-08T14:03:11Z"
},
"team": {
"id": "01jb7h0000000000000000team",
"name": "Acme",
"plan": "pro"
}
}

Corpo {"error", "message", "details"?} (veja Autenticação e visão geral e a tabela de erros): 401 Token ausente, inválido, expirado ou revogado. A resposta é genérica de propósito; 429 Limite de requisições excedido. Espere Retry-After segundos; 500 Falha interna (internal). O detalhe fica só no log do servidor; repita depois, e informe o Idempotency-Key ao suporte se persistir; 503 Serviço (ex.: scanner ou borda) temporariamente indisponível. Tente de novo após Retry-After.

Esta especificação (OpenAPI 3.1 em JSON)

Serve esta própria especificação. Cache curto (5 minutos) e ETag. A versão YAML legível está no repositório (docs/openapi.yaml).

Endpoint público: não exige token.

Escopo exigido: - · operationId: getOpenAPI

Documento OpenAPI 3.1.

Campo Tipo Obrig. Descrição
openapi string sim
info object sim
paths object sim

If-None-Match igual ao ETag atual: sem corpo.

Corpo {"error", "message", "details"?} (veja Autenticação e visão geral e a tabela de erros): 404 Recurso inexistente ou pertencente a outro time (indistinguíveis de propósito); 500 Falha interna (internal). O detalhe fica só no log do servidor; repita depois, e informe o Idempotency-Key ao suporte se persistir; 503 Serviço (ex.: scanner ou borda) temporariamente indisponível. Tente de novo após Retry-After.