Atto Wallet Server API (v1.0.0)
Download OpenAPI specification:Download
The Atto Wallet Server provides a simple, self-hostable interface to manage accounts, send and receive funds, and track balances within the Atto network. It is designed for use by applications, abstracting away the complexity of directly interacting with the node.
Manage accounts within a wallet. This controller allows clients to create new accounts, enable or disable them, send transactions, and change a representative. Accounts are scoped to wallets and represent individual identities on the Atto network. This interface is designed for applications interacting with locally managed accounts.
Send to target address
path Parameters
address required | string |
Request Body schema: application/jsonrequired
receiverAddress required | string The address of the receiving account |
amount required | integer <int64> Amount |
lastHeight | integer <int64> Optional last known height. Used to avoid double sent |
Responses
Request samples
- Payload
{- "receiverAddress": "aa36n56jj5scb5ssb42knrtl7bgp5aru2v6pd2jspj5axdw2iukun6r2du4k2",
- "amount": 10000,
- "lastHeight": 1
}
Change representative
path Parameters
address required | string |
Request Body schema: application/jsonrequired
representativeAddress required | string The address of the new representative account |
Responses
Request samples
- Payload
{- "representativeAddress": "aa36n56jj5scb5ssb42knrtl7bgp5aru2v6pd2jspj5axdw2iukun6r2du4k2"
}
Get account entries
Request Body schema: application/json
required | Array of objects (AccountHeightSearch) | ||||
Array
|
Responses
Request samples
- Payload
{- "search": [
- {
- "address": "aa36n56jj5scb5ssb42knrtl7bgp5aru2v6pd2jspj5axdw2iukun6r2du4k2",
- "fromHeight": 0
}
]
}
Manage wallets in the self-hosted Atto Wallet Server. This controller allows you to create new wallets, import existing ones using mnemonics, lock and unlock wallets by managing their in-memory decryption keys, and list or retrieve wallet information. Designed for applications that require secure and programmatic control over local wallets.
Import existing wallet
Imports a wallet from its 24‑word mnemonic. You may supply your own Cha Cha 20 encryption key; if omitted, the server generates one. Losing either the mnemonic or key means permanent loss of access.
path Parameters
name required | string |
Request Body schema: application/jsonrequired
mnemonic required | string 24 words mnemonic |
encryptionKey | string Optional 32 bytes hex encoded Cha Cha 20 encryption key used to encrypt mnemonic at rest. If not provided the wallet will generate one. |
Responses
Request samples
- Payload
{- "mnemonic": "florbit nuster glenth ravax drindle sporkel quenth brimzo kraddle yempth plarnix chuzzle grintop vornish daprex slindle frumple zorgat mekton yindle cravix blanter swooshle prindle",
- "encryptionKey": "0000000000000000000000000000000000000000000000000000000000000000"
}
Unlock wallet
Loads the provided encryptionKey into memory and stores it securely by encrypting it at rest using the CHA_CHA20_KEY_ENCRYPTION_KEY
.
path Parameters
name required | string |
Request Body schema: application/jsonrequired
encryptionKey required | string 32 bytes hex encoded Cha Cha 20 encryption key used to encrypt mnemonic at rest |
Responses
Request samples
- Payload
{- "encryptionKey": "0000000000000000000000000000000000000000000000000000000000000000"
}