Skip to main content
Use a API de conta para ler o uso, o estado da cota, o histórico de uso e a prontidão da assinatura, e para sair da conta. As leituras da conta usam um token bearer da conta ou a sessão do navegador. Nunca use uma chave de ingestão do projeto em uma requisição da conta. Nunca use uma credencial da conta na configuração do SDK ou da ingestão. Os erros usam o envelope de erro padrão da API. Uma leitura sem autenticação válida da conta retorna 401 com code: "unauthorized". Não mostre essa falha como uso zero, gráfico vazio ou plano gratuito. Um método não suportado retorna 405 com code: "method_not_allowed", e next indica a requisição suportada. A API de conta informa o uso de telemetria, não valores em dinheiro. Ela não informa cobranças, faturas nem o estado do pagamento.

Uso da conta

GET /api/account/usage é o endpoint canônico de uso e cota. Use esse endpoint para os totais de uso, o horário de reinício, o estado da cota e os detalhamentos por projeto e por fluxo de telemetria. Não calcule o uso a partir de arquivos do SDK, arquivos da CLI ou contadores do cliente. O comando logbrew usage da CLI lê este endpoint. Consulte a Referência da CLI.
Exemplo de resposta com valores sintéticos. Esta conta gratuita tem 1 projeto e enviou só logs no período atual:

Eventos descartados pelos SDKs

Envie response_version=2 para receber também sdk_dropped_events. Sem esse parâmetro, ou com response_version=1, a resposta não tem esse campo.
sdk_dropped_events lista os eventos que os SDKs informaram como descartados antes do envio no período atual, por exemplo porque a fila do cliente estava cheia. Há 1 linha para cada projeto e motivo:
Eventos descartados nunca chegaram ao LogBrew. Eles não são cobrados e não contam em usage, by_project nem by_stream. O array fica vazio quando nenhum SDK informou descartes.

Estados da cota

Use state para a decisão principal. limit é null só quando state é ok. next_action.state, next_action.limit e next_action.reset_at repetem os valores de nível superior. Os valores de next_action.code também incluem check_usage_limits com o target account_usage. Se um cliente receber esse par, leia o uso de novo e mostre next. O LogBrew mede cada tipo de telemetria em relação à própria franquia. limit agrupa esses tipos:
  • events abrange eventos de problemas e spans de trace.
  • bytes abrange bytes de logs e bytes de métricas.
Se uma franquia estiver bloqueada e outra estiver em aviso, limit indica a franquia bloqueada. O estado warning começa quando o uso atinge warning_threshold de uma franquia. O estado blocked começa quando o uso atinge a franquia. O texto de next pode mudar, por exemplo quando os planos não estão à venda. Os valores de next_action não mudam. Localize a partir de next_action. Não faça parsing de next. Um limite de uso da conta não é um limite de requisições da API. Quando a ingestão ultrapassa uma franquia, a requisição de ingestão retorna 429 com usage_limit_exceeded, e o corpo adiciona limit e reset_at. Nesse erro, limit indica a franquia exata: issue_events, log_bytes, metric_bytes ou trace_spans. O LogBrew rejeita a requisição inteira. Não envie esse tipo de telemetria de novo até reset_at ou até o plano mudar. Quando um cliente envia requisições demais, a API retorna rate_limited. Consulte Erros da API. A resposta é um snapshot. Leia de novo depois de uma mudança na conta.
GET /api/logs/usage é uma resposta de compatibilidade legada para aplicativos móveis, com bytes_used, limit_bytes e month. Use GET /api/account/usage em novas integrações.

Histórico de uso

GET /api/account/usage/history retorna intervalos de uso limitados e preenchidos com zeros, para gráficos e relatórios. Defina interval com um valor aceito. Se você omitir interval, a API usa monthly. A rota não aceita nenhum outro parâmetro de consulta.
Esta resposta yearly usa dados sintéticos de uma requisição feita em junho de 2026. Todo o uso ocorreu em junho:
Use current.reset_at para o reinício da franquia. Não use o fim da janela de histórico. current não é a soma dos intervalos, e as datas dele podem ser diferentes das datas da janela. O último intervalo contém o período atual do calendário, que não está completo. O horário de fim no futuro não significa que o LogBrew mediu uso futuro. Um intervalo com zeros significa que o LogBrew não contou uso nesse intervalo. Em um intervalo, usage.projects conta os projetos que tiveram uso nesse intervalo. Não some essas contagens para obter o número de projetos. Use current.usage.projects para saber o número de projetos da conta. Mostre eventos e bytes em séries separadas, porque eles usam unidades diferentes. Os intervalos contêm uso, não custo. Não rotule o gráfico como gastos, faturas ou requisições da API. Um valor de interval não suportado retorna 422:
Um parâmetro de consulta desconhecido também retorna 422 com validation_failed.

Prontidão da assinatura

GET /api/account/subscription é somente leitura. Use esse endpoint para decidir se deve ativar os controles de plano pago ou de organização. Use o endpoint de uso para o estado da cota.
Uma conta gratuita retorna esta resposta. O account_id é sintético:
next é texto de exibição. Ele muda quando os planos pagos estão ou não estão à venda. Mostre o texto retornado ou localize a partir de next_action. Não fixe no código um nome de plano tirado de next. Valores de enum: Cada bloqueio tem um par next_action: Os valores de tier são identificadores, não nomes de exibição. Mantenha esses valores inalterados em um cliente localizado. Uma conta paga ainda pode estar bloqueada. Confira organization_creation_allowed antes de ativar a criação de organizações. Este endpoint não cria organizações, não envia convites, não muda funções e não altera a cobrança.

Sair da conta

Escolha o menor escopo que atende à tarefa. Estes endpoints não excluem a conta nem os projetos dela, não fazem a rotação de chaves de ingestão e não revogam a autorização de um provedor de login de terceiros.

Um login de aplicativo ou da CLI

Envie a requisição a partir do cliente que guarda o token de atualização. Defina Content-Type: application/json:
Nunca peça para uma pessoa ou um agente imprimir ou colar um token de atualização. Uma resposta bem-sucedida é 200:
Isso revoga uma família de tokens de atualização. O LogBrew rejeita as atualizações seguintes desse login. Os outros logins da conta não mudam. Um token de acesso que o cliente já tem continua válido até expirar. Se as credenciais da conta puderem estar expostas, use Todos os logins do LogBrew. Depois da resposta, o cliente remove as credenciais locais. Se você enviar o mesmo token de atualização válido de novo, a resposta é o mesmo 200. Se o token for inválido, estiver expirado ou for um token de acesso, a resposta é 401 com code: "unauthorized" e next_action.code: "authorize_request". Remova as credenciais locais nesse caso também. logbrew logout usa este endpoint.

Todos os logins do LogBrew

Esta requisição encerra a sessão de todos os clientes da conta. Obtenha a aprovação do dono da conta antes que um agente envie a requisição.
Uma resposta bem-sucedida é 200:
revoked_before é inclusivo e tem precisão de milissegundos. O LogBrew rejeita tokens de acesso, sessões do navegador e tokens de atualização de um login feito nesse horário ou antes dele. Um token atualizado depois, a partir desse login, também é rejeitado. As sessões atuais do feed ao vivo terminam, e a resposta limpa o cookie de sessão do navegador. Um login feito depois desse horário continua válido. Cada cliente precisa remover as credenciais locais do LogBrew e entrar de novo. Não entre de novo para repetir esta requisição automaticamente. Uma nova requisição também revoga o novo login. Se a resposta se perder, não informe que todos os logins foram revogados. Um 401 posterior vindo de uma credencial antiga não substitui a resposta de sucesso. Para mais passos de recuperação, leia Proteger uma conta comprometida.

Sessão do navegador

POST /api/auth/web/logout limpa o cookie logbrew_session do navegador e retorna 204 No Content sem corpo. Chame esse endpoint a partir do navegador. Não copie o cookie de sessão para um comando. Esta requisição não encerra a sessão de outros clientes e não revoga uma cópia do valor do cookie. Para revogar todas as sessões, use Todos os logins do LogBrew.

Recuperar de um erro ao sair da conta

Para rotas, filtros e paginação de telemetria, leia a API de telemetria.