Nano Wallets API
Local wallet management for development and testing
Local wallet management for development and testing
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/nano-wallets-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Nano RPC Accounts Wallets API
description: 'The Nano RPC API is a JSON-RPC HTTP interface for interacting with the Nano network. Nano is a feeless, instant digital currency using a block-lattice architecture where each account maintains its own blockchain. The RPC API supports account queries, block operations, wallet management, node diagnostics, and unit conversions. All requests are POST with a JSON body containing an "action" field identifying the RPC command.
'
version: 1.0.0
contact:
name: Nano Foundation
url: https://nano.org/en/developers
email: integrations@nano.org
license:
name: BSD-2-Clause
url: https://opensource.org/licenses/BSD-2-Clause
termsOfService: https://nano.org/terms-of-use
servers:
- url: http://localhost:7076
description: Local Nano node (default RPC port)
tags:
- name: Wallets
description: Local wallet management for development and testing
paths:
/account_create:
post:
operationId: account_create
summary: Create account in wallet
description: Generates a new account in the specified wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- account_create
wallet:
type: string
work:
type: boolean
responses:
'200':
description: Created account address
content:
application/json:
schema:
type: object
properties:
account:
type: string
/account_list:
post:
operationId: account_list
summary: List wallet accounts
description: Returns all accounts stored in the given wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- account_list
wallet:
type: string
responses:
'200':
description: List of account addresses
content:
application/json:
schema:
type: object
properties:
accounts:
type: array
items:
type: string
/account_move:
post:
operationId: account_move
summary: Move accounts between wallets
description: Moves accounts from one wallet to another.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- source
- accounts
properties:
action:
type: string
enum:
- account_move
wallet:
type: string
source:
type: string
accounts:
type: array
items:
type: string
responses:
'200':
description: Move result
content:
application/json:
schema:
type: object
properties:
moved:
type: string
/account_remove:
post:
operationId: account_remove
summary: Remove account from wallet
description: Removes an account from the wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- account
properties:
action:
type: string
enum:
- account_remove
wallet:
type: string
account:
type: string
responses:
'200':
description: Removal result
content:
application/json:
schema:
type: object
/account_representative_set:
post:
operationId: account_representative_set
summary: Set account representative
description: Changes the representative for an account in a wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- account
- representative
properties:
action:
type: string
enum:
- account_representative_set
wallet:
type: string
account:
type: string
representative:
type: string
work:
type: string
responses:
'200':
description: Block hash for the change block
content:
application/json:
schema:
type: object
properties:
block:
type: string
/accounts_create:
post:
operationId: accounts_create
summary: Create multiple wallet accounts
description: Batch-creates multiple accounts in the given wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- count
properties:
action:
type: string
enum:
- accounts_create
wallet:
type: string
count:
type: integer
work:
type: boolean
responses:
'200':
description: Created account addresses
content:
application/json:
schema:
type: object
properties:
accounts:
type: array
items:
type: string
/password_change:
post:
operationId: password_change
summary: Change wallet password
description: Sets a new password for the given wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- password
properties:
action:
type: string
enum:
- password_change
wallet:
type: string
password:
type: string
responses:
'200':
description: Password change result
content:
application/json:
schema:
type: object
/password_enter:
post:
operationId: password_enter
summary: Enter wallet password
description: Unlocks the wallet with the provided password.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- password
properties:
action:
type: string
enum:
- password_enter
wallet:
type: string
password:
type: string
responses:
'200':
description: Password validation result
content:
application/json:
schema:
type: object
/password_valid:
post:
operationId: password_valid
summary: Check if wallet password is valid
description: Checks whether the current wallet password is valid (wallet is unlocked).
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- password_valid
wallet:
type: string
responses:
'200':
description: Password validity
content:
application/json:
schema:
type: object
properties:
valid:
type: boolean
/receive:
post:
operationId: receive
summary: Receive a block
description: Creates a receive block for a pending transaction.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- account
- block
properties:
action:
type: string
enum:
- receive
wallet:
type: string
account:
type: string
block:
type: string
work:
type: string
responses:
'200':
description: Receive block hash
content:
application/json:
schema:
type: object
properties:
block:
type: string
/receive_minimum:
post:
operationId: receive_minimum
summary: Get receive minimum
description: Returns the minimum receive amount configured for the node.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
properties:
action:
type: string
enum:
- receive_minimum
responses:
'200':
description: Minimum receive amount in raw units
content:
application/json:
schema:
type: object
properties:
receive_minimum:
type: string
/receive_minimum_set:
post:
operationId: receive_minimum_set
summary: Set receive minimum
description: Sets the minimum receive amount for the node.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- amount
properties:
action:
type: string
enum:
- receive_minimum_set
amount:
type: string
responses:
'200':
description: Set result
content:
application/json:
schema:
type: object
/search_receivable:
post:
operationId: search_receivable
summary: Search for receivable blocks
description: Searches for pending receivable blocks for all accounts in the wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- search_receivable
wallet:
type: string
responses:
'200':
description: Search started
content:
application/json:
schema:
type: object
properties:
started:
type: string
/search_receivable_all:
post:
operationId: search_receivable_all
summary: Search receivable blocks for all wallets
description: Searches for pending receivable blocks across all wallets on the node.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
properties:
action:
type: string
enum:
- search_receivable_all
responses:
'200':
description: Search started
content:
application/json:
schema:
type: object
properties:
started:
type: string
/send:
post:
operationId: send
summary: Send Nano
description: Creates and publishes a send block to transfer Nano to a destination.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- source
- destination
- amount
properties:
action:
type: string
enum:
- send
wallet:
type: string
source:
type: string
destination:
type: string
amount:
type: string
description: Amount in raw units
work:
type: string
example:
action: send
wallet: 000D1BAEC8EC208142C99059B393051BAC8380F9B5A2E6B2489A277D81789F3F
source: nano_3t6k35gi95xu6tergt6p69ck76ogmitsa8mnijtpxm9fkcm736xtoncuohr3
destination: nano_3qb6o6i1tkzr6jwr5s7eehfxwg9x6eemitdinbpi7u8bjjwsgqfj4wzser3x
amount: '1000000000000000000000000'
responses:
'200':
description: Send block hash
content:
application/json:
schema:
type: object
properties:
block:
type: string
/wallet_add:
post:
operationId: wallet_add
summary: Add private key to wallet
description: Adds an existing private key to a wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- key
properties:
action:
type: string
enum:
- wallet_add
wallet:
type: string
key:
type: string
work:
type: boolean
responses:
'200':
description: Account for the added key
content:
application/json:
schema:
type: object
properties:
account:
type: string
/wallet_add_watch:
post:
operationId: wallet_add_watch
summary: Add watch-only accounts to wallet
description: Adds accounts to watch in the wallet without private keys.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- accounts
properties:
action:
type: string
enum:
- wallet_add_watch
wallet:
type: string
accounts:
type: array
items:
type: string
responses:
'200':
description: Watch accounts added
content:
application/json:
schema:
type: object
/wallet_balances:
post:
operationId: wallet_balances
summary: Get balances for all wallet accounts
description: Returns balances for all accounts in the given wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_balances
wallet:
type: string
threshold:
type: string
responses:
'200':
description: Balances per account
content:
application/json:
schema:
type: object
properties:
balances:
type: object
additionalProperties:
$ref: '#/components/schemas/AccountBalanceResponse'
/wallet_change_seed:
post:
operationId: wallet_change_seed
summary: Change wallet seed
description: Replaces the wallet seed with a new one.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- seed
properties:
action:
type: string
enum:
- wallet_change_seed
wallet:
type: string
seed:
type: string
count:
type: integer
responses:
'200':
description: Seed change result
content:
application/json:
schema:
type: object
/wallet_contains:
post:
operationId: wallet_contains
summary: Check if wallet contains account
description: Returns whether the wallet contains the given account.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- account
properties:
action:
type: string
enum:
- wallet_contains
wallet:
type: string
account:
type: string
responses:
'200':
description: Containment result
content:
application/json:
schema:
type: object
properties:
exists:
type: boolean
/wallet_create:
post:
operationId: wallet_create
summary: Create new wallet
description: Creates a new wallet and returns its identifier.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
properties:
action:
type: string
enum:
- wallet_create
responses:
'200':
description: New wallet identifier
content:
application/json:
schema:
type: object
properties:
wallet:
type: string
/wallet_destroy:
post:
operationId: wallet_destroy
summary: Destroy a wallet
description: Permanently deletes a wallet and all its accounts.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_destroy
wallet:
type: string
responses:
'200':
description: Destruction result
content:
application/json:
schema:
type: object
/wallet_export:
post:
operationId: wallet_export
summary: Export wallet
description: Exports wallet data as a JSON string containing the seed.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_export
wallet:
type: string
responses:
'200':
description: Exported wallet JSON
content:
application/json:
schema:
type: object
properties:
json:
type: string
/wallet_frontiers:
post:
operationId: wallet_frontiers
summary: Get frontiers for wallet accounts
description: Returns the frontier block for each account in the wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_frontiers
wallet:
type: string
responses:
'200':
description: Frontiers per account
content:
application/json:
schema:
type: object
properties:
frontiers:
type: object
additionalProperties:
type: string
/wallet_history:
post:
operationId: wallet_history
summary: Get wallet transaction history
description: Returns all transactions for accounts in the wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_history
wallet:
type: string
modified_since:
type: integer
responses:
'200':
description: Wallet transaction history
content:
application/json:
schema:
type: object
properties:
history:
type: array
items:
type: object
/wallet_info:
post:
operationId: wallet_info
summary: Get wallet information
description: Returns metadata about the given wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_info
wallet:
type: string
responses:
'200':
description: Wallet metadata
content:
application/json:
schema:
type: object
properties:
deterministic:
type: string
block_count:
type: string
accounts_count:
type: string
min_version:
type: string
/wallet_ledger:
post:
operationId: wallet_ledger
summary: Get ledger for wallet accounts
description: Returns ledger information for all accounts in the wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_ledger
wallet:
type: string
representative:
type: boolean
weight:
type: boolean
receivable:
type: boolean
sorting:
type: boolean
threshold:
type: string
responses:
'200':
description: Ledger entries for wallet accounts
content:
application/json:
schema:
type: object
properties:
accounts:
type: object
additionalProperties:
type: object
/wallet_lock:
post:
operationId: wallet_lock
summary: Lock a wallet
description: Locks the specified wallet, requiring password re-entry.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_lock
wallet:
type: string
responses:
'200':
description: Lock result
content:
application/json:
schema:
type: object
/wallet_locked:
post:
operationId: wallet_locked
summary: Check if wallet is locked
description: Returns whether the wallet is currently locked.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_locked
wallet:
type: string
responses:
'200':
description: Lock status
content:
application/json:
schema:
type: object
properties:
locked:
type: boolean
/wallet_receivable:
post:
operationId: wallet_receivable
summary: Get receivable blocks for wallet
description: Returns pending receivable blocks for all wallet accounts.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_receivable
wallet:
type: string
threshold:
type: string
source:
type: boolean
include_active:
type: boolean
sorting:
type: boolean
count:
type: integer
responses:
'200':
description: Receivable blocks per account
content:
application/json:
schema:
type: object
properties:
blocks:
type: object
additionalProperties:
type: object
/wallet_representative:
post:
operationId: wallet_representative
summary: Get wallet representative
description: Returns the default representative for the wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_representative
wallet:
type: string
responses:
'200':
description: Wallet representative
content:
application/json:
schema:
type: object
properties:
representative:
type: string
/wallet_representative_set:
post:
operationId: wallet_representative_set
summary: Set wallet representative
description: Sets the default representative for the wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
- representative
properties:
action:
type: string
enum:
- wallet_representative_set
wallet:
type: string
representative:
type: string
work:
type: boolean
responses:
'200':
description: Set result
content:
application/json:
schema:
type: object
/wallet_republish:
post:
operationId: wallet_republish
summary: Republish wallet blocks
description: Republishes blocks for all accounts in the wallet.
tags:
- Wallets
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- action
- wallet
properties:
action:
type: string
enum:
- wallet_republish
wallet:
type: string
count:
type: integer
responses:
'200':
description: Republished block hashes
content:
application/json:
schema:
type: object
properties:
blocks:
type: array
items:
type: string
/wallet_work_get:
post:
operationId: wallet_work_get
summary: Get work for wallet account
description: Returns the cached proof-of-work for an account
# --- truncated at 32 KB (33 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/nano/refs/heads/main/openapi/nano-wallets-api-openapi.yml