Trading (HTTP - Signed)
Manage Agent Wallet (Signed)
Register or remove an agent wallet via the unified transaction endpoint
POST
Register agent wallet
Agent wallet management uses the unified
For agent wallet, the action is a single
Failure returns
POST /order endpoint. Send a transaction with an agentWalletCreation action in the actions array.
Scope: agent wallets are registered on the
account field of this transaction. An agent registered on a master can sign for that master and for any of its sub-accounts. Sub-accounts can also register their own agent wallets independently (set account to the sub-account pubkey when registering). To use an agent on a sub-account, set the transaction account to the sub-account pubkey and signer to the agent wallet’s pubkey.Isolated accounts are managed entirely through the i flag on order actions and are never set as account for any transaction (including agentWalletCreation). See Isolated Margin.Transaction Envelope
Every request toPOST /order has this shape:
agentWalletCreation object.
Agent Wallet Action
Request Examples
Register an agent
Remove an agent
Signing the Transaction
The canonical signing path is the raw wincode binary message described in Transaction Signing. Two extra signing modes are accepted on this endpoint:- General offchain mode: any transaction (including
agentWalletCreation) can be signed using the v0 Solana offchain-message envelope. Setx-bulk-sig-mode: offchainon the request. See Offchain Signing Mode. - Legacy wallet-compatibility path (owner-signed
agentWalletCreationonly): whensigner == accountand the transaction contains exactly oneagentWalletCreationaction, the server also accepts a signature overbs58_encode(canonical_binary_message).as_bytes()for older wallet UIs that cannot produce raw binary signatures. See Legacy Wallet-Compatibility Path.
Response
SameOrderResponse format as other actions. Success may return agentWallet status:
agentWalletFailed:
Before You Start
See the Transaction Signing guide for how to sign your requests.Nonce: Use a unique value (e.g. timestamp in nanoseconds):
BigInt(Date.now()) * 1_000_000nBody
application/json
Transaction with a single agentWalletCreation action
Must contain exactly one agentWalletCreation action
Unique nonce (e.g. nanoseconds)
Account public key (base58)
Signer public key (base58)
Ed25519 signature (base58)