x402 · Agent buy
Agentes compram RWAs, sem chaves.
Um agente autônomo adquire um ativo do mundo real tokenizado de ponta a ponta apenas com sua própria chave EVM. Ele se autentica com uma assinatura, se financia em USDC via x402, e a Realmint faz o bridge e roteia a compra.
Integre o mesmo fluxo no OpenAI, Gemini, LangChain, CrewAI ou no Vercel AI SDK com os tool schemas publicados.
Por que x402
O que você ganha de imediato
Funding e execução que um agente conduz sozinho, sem custódia e sem entregar chaves.
Autenticação sem chaves
O agente assina um challenge EIP-191 com sua própria chave EVM. Sem API key para provisionar, rotacionar ou vazar.
Autofinanciamento sem gas
O USDC se move com uma autorização EIP-3009 via x402. O agente precisa de USDC na Base — mas nada de ETH para gas.
Bridge + routing automáticos
A Realmint faz o bridge do USDC via CCTP e roteia a compra para o melhor venue. Sem etapas cross-chain manuais.
Não custodial por design
A assinatura é sempre local; a Realmint nunca guarda chaves. Gastar os fundos continua exigindo a assinatura do próprio agente.
Quickstart
Três chamadas com o SDK
O SDK guarda a chave EVM do agente e assina localmente. Use HTTP puro apenas quando não houver um runtime JS disponível.
import { agentLogin, fundWithX402, signerFromViemAccount } from "@realmint/sdk";
import { privateKeyToAccount } from "viem/accounts";
// 1. Keyless auth — sign a challenge with the agent's EVM key (stays local)
const account = privateKeyToAccount(process.env.AGENT_PRIVATE_KEY!);
const { client } = await agentLogin({
ownerEoa: account.address,
signMessage: (m) => account.signMessage({ message: m }),
});
// 2. Self-fund in USDC over x402 (gasless EIP-3009 transfer on Base)
// payX402: your x402 payment signer (e.g. the Coinbase x402 SDK on Base)
const payX402: X402PaymentSigner = /* ... */;
await fundWithX402(client, { owner_eoa: account.address, amount_usdc: 5, asset_id: "tslax" }, payX402);
// 3. Buy — Realmint bridges + routes; the UserOp is signed locally
const intent = await client.buy(
{ asset_id: "tslax", source_token: "USDC", amount_in: 5, agent_wallet: account.address },
signerFromViemAccount(account),
);Por dentro
O fluxo de ponta a ponta
O que o SDK faz por você — cada etapa é um endpoint público e documentado.
Autenticar (sem chaves)
Peça um challenge, assine-o com a chave EVM (EIP-191) e troque a assinatura por um bearer token de curta duração. Não é preciso API key.
POST /v1/agent/auth/challenge → /v1/agent/auth/tokenAutofinanciar-se via x402
A primeira chamada retorna 402 com os requisitos de pagamento. Assine um transferWithAuthorization EIP-3009 de USDC e tente de novo com o header X-PAYMENT; a Realmint liquida via o facilitator da Coinbase.
POST /v1/route/x402-buy → 402 Payment RequiredO bridge liquida automaticamente
A Realmint transfere o USDC para a smart account do agente via CCTP (alguns minutos). Consulte o portfólio até o saldo chegar.
GET /v1/portfolio/<smart_account>Rotear a compra
Crie um intent, prepare-o, assine localmente o hash do UserOp retornado e então envie e execute. A Realmint escolhe o melhor venue para o ativo.
POST /v1/route/intent → /prepare → /executeConsulte até concluir
Consulte o intent até que ele reporte completed. O ativo é liquidado na smart account do agente.
GET /v1/route/intent/<id> → status: completedShip it
Não reinvente o ciclo de vida
Comece pelo agente de referência ou pelo SDK — ambos implementam o fluxo completo, incluindo a assinatura local.