Ir para o conteúdo principal
CONTROLES DE GASTOS

Define limits before delegating payment access.

Review how payment limits are evaluated and which paths are covered by enforcement. Set an allowance per period and a per-transaction cap on each agent in the dashboard.

Visão do painel: permissões de gastos por agente - limite, limite por transação, período

Agentes autônomos cometem erros. Eles tentam novamente. Eles fazem loops. Eles são injetados com prompts. Eles ocasionalmente tentam gastar dinheiro que você não autorizou.

An AgentCredia spend permission is owner-set in the dashboard and enforced by the backend, not by the agent's code. Every outbound payment is checked against the active permission before the API accepts it, so a payment above the limit is rejected even if the agent's logic tries to send it. Your code can read the permission over the API to display it or plan around it, but it cannot raise it.

O QUE UMA PERMISSÃO DE GASTO TEM

Quatro dimensões. Definido uma vez. Aplicado em todos os lugares.

Alocação por um período

allowance_wei é o total de USDC (unidades base) que o agente pode enviar em uma janela de period_seconds. O período é um dia (86400), uma semana (604800) ou 30 dias (2592000).

Limite por transação

per_tx_wei é o maior pagamento único permitido. Ele impede que uma chamada equivocada mova mais do que você pretendia, independentemente da concessão de período.

Janela de validade

start_at e end_at são vinculados quando a permissão está ativa. Fora da janela, não autoriza gastos, então você pode pré-estabelecer um orçamento ou deixar um expirar por conta própria.

Revogação

revoked_at registra quando uma permissão foi desligada no painel. Revogar leva a concessão a zero imediatamente para qualquer pagamento avaliado após isso.

GERENCIADO PELO PAINEL, SOMENTE LEITURA VIA API

A chave do agente não pode aumentar seu próprio limite.

Você cria, altera e revoga permissões de gastos no painel. A API as expõe somente leitura - não há endpoint e nenhum método SDK que muta uma permissão. Esse é o ponto: se o agente for injetado por prompt ou ficar preso em um loop, ele não pode ampliar sua própria concessão, porque a credencial que possui nunca recebeu esse poder.

Quando um pagamento excede a permissão ativa, o backend o rejeita antes que qualquer coisa toque a cadeia. Nenhum fundo se move. Seu agente lida com essa rejeição como qualquer outra chamada falhada, e você vê a tentativa no painel para que possa ampliar a permissão se for legítima.

LEIA VIA A API

Busque a permissão atual para exibir ou planejar em torno dela.

GET /v1/agents/{id}/spend-permissions retorna os valores ao vivo. Use-o para mostrar um orçamento na sua UI, ou para permitir que o agente verifique quanto espaço resta antes de tentar um pagamento.

LEIA (CURL)
curl https://api.agentcredia.com/v1/agents/agt_123/spend-permissions \
  -H "Authorization: Bearer $AGENTCREDIA_API_KEY"
RESPOSTA
{
  "allowance_wei": "5000000",
  "per_tx_wei": "1000000",
  "period_seconds": 86400,
  "start_at": "2026-05-15T00:00:00Z",
  "end_at": null,
  "revoked_at": null
}
allowance_wei

Total spend allowed per period, in USDC base units (6 decimals). "5000000" is 5 USDC.

per_tx_wei

Largest single payment allowed, in base units. "1000000" is 1 USDC. A payment over this is rejected even if the period allowance has room.

period_seconds

A janela à qual a concessão se aplica: 86400 (dia), 604800 (semana) ou 2592000 (30 dias).

start_at / end_at

Quando a permissão está ativa. end_at é nulo para uma permissão sem prazo.

revoked_at

Nulo enquanto ativo; um timestamp uma vez revogado do painel. Uma permissão revogada não autoriza nada.

O PERÍODO

Dia, semana ou 30 dias.

period_seconds aceita um dos três valores. A concessão é redefinida quando o período se encerra; per_tx_wei se aplica a cada pagamento individual, independentemente do período.

86400

1 dia

604800

1 semana

2592000

30 dias

Uma permissão de gasto é um limite rígido, definido uma vez, aplicado em todos os lugares - não um fluxo de aprovação por pagamento e não uma confirmação com humano no loop. Se você precisar de aprovações ou múltiplas assinaturas, esse é um padrão separado e mais pesado; a permissão é o piso sempre ativo sob ele.

PERGUNTAS FREQUENTES

Cinco perguntas sobre permissão de gasto que os operadores fazem.

Posso definir ou alterar uma permissão de gasto através da API?

Não. As permissões de gasto são somente leitura pela API. Você cria, altera e revoga-as no painel do AgentCredia, e GET /v1/agents/{id}/spend-permissions permite que seu código leia os valores atuais para exibi-los ou verificá-los. Isso é deliberado: a própria chave da API do agente não pode relaxar seus próprios limites, que é exatamente a propriedade que você deseja se o agente for algum dia injetado ou entrar em loop. Para aumentar uma concessão, você precisa do painel.

O que acontece quando um pagamento excede a permissão?

O backend rejeita isso antes que qualquer coisa toque a cadeia - nenhum fundo se move. A aplicação da regra vive no backend, não no código do seu agente, então o agente não pode contornar isso mesmo que sua lógica tente. Leia a permissão com a rota GET para mostrar ao seu agente quanto espaço resta, e trate a rejeição de payments.create da mesma forma que você trataria qualquer outra chamada falhada.

Por que os valores estão em wei em vez de dólares?

Consistency with the rest of the API: every amount is a base-unit string. USDC has 6 decimals, so allowance_wei "5000000" is 5 USDC and per_tx_wei "1000000" is 1 USDC. Strings, not floats - large integers lose precision as JSON numbers, and a base-unit string is unambiguous across languages.

As permissões de gasto limitam os pagamentos recebidos?

Não. Uma permissão governa apenas o dinheiro saindo da carteira. O USDC de entrada nunca é bloqueado por isso - qualquer um pode pagar seu agente a qualquer momento. Pense na permissão como uma válvula unidirecional sobre gastos de saída; o acerto de entrada é confirmado separadamente pelo webhook payment.received.

Como revogo o gasto rapidamente se algo parecer errado?

Revogue a permissão no painel - isso define revoked_at e leva a concessão a zero para qualquer pagamento avaliado posteriormente. Para uma parada mais drástica, você também pode rotacionar ou revogar a chave da API do agente (apiKeys.rotate / apiKeys.revoke), o que corta completamente a credencial. Ambos são imediatos; a revogação da permissão é a cirúrgica, a revogação da chave é o interruptor de emergência.

Gaste com limites, não surpresas.

Defina uma concessão e um limite por transação no painel. O backend faz o resto.