Provision a managed Umbra wallet (Mode A)
Create a Solrouter-custodied Umbra wallet. The keypair is generated server-side and envelope-encrypted (AES-256-GCM) — the agent never holds private keys. Fund the returned `umbraAddress`, then run swaps and encrypted-balance operations against the wallet id.
Authorization
ApiKey In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://example.com/agents/v1/wallets" \ -H "Content-Type: application/json" \ -d '{ "webhookUrl": "https://my-agent.example/hooks/umbra" }'{
"walletId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"umbraAddress": "umbra1q9c0ffee7p3rh4z8x2v6m5k0n9d3w7s2a1b4c8e6f0g",
"network": "mainnet",
"fundingHint": "send SOL or SPL tokens to umbraAddress to fund this wallet"
}{
"error": "missing_required_fields"
}Submit fundingTxSig and start the swap orchestrator
After signing + broadcasting the funding tx from the one-shot session, submit its signature here to start the swap.
Build an unsigned funding tx for the agent to sign
Returns an unsigned base64 transaction that moves tokens from the agent's own wallet into the managed wallet. The agent signs and broadcasts it.