402 Payment Required: o servidor responde à primeira chamada com
o preço, o cliente paga e chama de novo com a prova do pagamento, e o servidor
responde com os dados. No CCTools, uma rota funciona assim, ao lado das rotas
com chave de API. Você não precisa de chave nem de conta, só de uma carteira
Canton que possa pagar.
O uso com chave é separado: consiga uma chave em cctools.network/profile/api e teste cada endpoint com chave em cctools.network/api-docs.
A rota paga
O preço fica na própria resposta
402 da rota, e essa resposta é a referência.
Leia o preço nela antes de pagar, em vez de confiar nos valores acima."0" significa que a exchange não informou
nenhum valor.
Como funciona uma chamada paga
1
Chame sem pagar
A rota responde
402 com um header PAYMENT-REQUIRED: JSON codificado em
base64 cujo array accepts traz uma entrada por ativo em que você pode
pagar. O amount de cada entrada está em unidades atômicas com dez casas
decimais, então 1000000000 é 0,1.2
Assine uma transferência para uma entrada
Seu cliente assina uma transferência na Canton que corresponde exatamente a
uma entrada e chama de novo com ela no header
PAYMENT-SIGNATURE,
repetindo essa entrada. Um cliente x402 faz esse passo por você.3
Receba os dados e o recibo
O facilitador confere a transferência e a liquida no ledger, e a rota
responde
200 com os dados e um header PAYMENT-RESPONSE que traz o
recibo da liquidação.Pague a partir de um agente
A FTP, que opera o facilitador, publica uma carteira de agente com autocustódia e um cliente de linha de comando,@ftptech/canton-agent-wallet.
Estes passos seguem o
guia de agentes da FTP e o README
do pacote (versão 2.3.1, lido em 15 de outubro de 2026):
pay lê o 402, paga uma entrada e imprime a resposta. --max limita quanto
um pagamento pode custar, em CC a menos que você escolha outro ativo, e a
carteira recusa antes de assinar qualquer valor acima dele. Para pagar em USDCx
ou cETH, adicione --asset USDCx (ou cETH) e antes autorize o gasto desse
token com CANTON_AGENT_PAYABLE_INSTRUMENTS, como o guia da FTP descreve.
No código, o mesmo pacote exporta makePayingFetch, um fetch que paga
qualquer 402 que encontrar:
Detalhes legíveis por máquina
- A resposta
402descreve a rota no formato de descoberta x402 Bazaar:extensions.bazaartraz a chamada (umGETsem parâmetros), um JSON Schema da resposta e uma linha de exemplo, eresourcetraz uma descrição com o preço por ativo. - A especificação OpenAPI
marca a rota com um bloco
x-x402: esquema, rede, facilitador, os três headers e o preço por ativo com o horário em que foi lido. - cctools.network/llms.txt lista a rota para modelos de linguagem.
Respostas e limites
- Uma rota. A rota de tickers é a única rota paga hoje.
- Pagamento primeiro. O pagamento é liquidado antes de os dados serem
enviados. Quando os dados não estão disponíveis ou a última leitura
bem-sucedida tem mais de 30 minutos, a rota responde
503antes de pedir qualquer pagamento. - Latência. A FTP informa que um pagamento depois do primeiro costuma levar de 10 a 25 segundos na mainnet; o primeiro após um início a frio demora mais.
- Por chamada. Cada chamada tem preço e pagamento próprios. Não há assinatura nem saldo pré-pago do lado do CCTools.
