Nano · Schema

Nano RPC Request

Base schema for all Nano JSON-RPC requests. Every request must include an 'action' field identifying the RPC command.

CryptocurrencyPaymentsBlockchainFeelessInstant PaymentsDigital Currency

Properties

Name Type Description
action string The RPC action to perform
account string A Nano account address (nano_ prefix followed by 60 base32 characters)
accounts array A list of Nano account addresses
hash string A 64-character uppercase hex block hash
hashes array A list of block hashes
wallet string A 64-character uppercase hex wallet identifier
count integer Maximum number of results to return
threshold string Minimum amount in raw units to include in results
source boolean Include source account information in results
sorting boolean Sort results by balance descending
representative stringboolean Include or set representative information
weight boolean Include voting weight in results
json_block string Return block contents as JSON object rather than string
key string A 64-character uppercase hex private or public key
seed string A 64-character uppercase hex wallet seed
work string Proof-of-work value (hex)
difficulty string Target difficulty for work generation (hex)
amount string Amount in raw units (integer string) or Nano units
View JSON Schema on GitHub

JSON Schema

nano-rpc-request.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/nano/refs/heads/main/json-schema/nano-rpc-request.json",
  "title": "Nano RPC Request",
  "description": "Base schema for all Nano JSON-RPC requests. Every request must include an 'action' field identifying the RPC command.",
  "type": "object",
  "required": ["action"],
  "properties": {
    "action": {
      "type": "string",
      "description": "The RPC action to perform",
      "enum": [
        "account_balance",
        "account_block_count",
        "account_get",
        "account_history",
        "account_info",
        "account_key",
        "account_representative",
        "account_weight",
        "accounts_balances",
        "accounts_frontiers",
        "accounts_receivable",
        "accounts_representatives",
        "available_supply",
        "block_account",
        "block_confirm",
        "block_count",
        "block_create",
        "block_hash",
        "block_info",
        "blocks",
        "blocks_info",
        "bootstrap",
        "bootstrap_any",
        "bootstrap_lazy",
        "bootstrap_status",
        "chain",
        "confirmation_active",
        "confirmation_history",
        "confirmation_info",
        "confirmation_quorum",
        "delegators",
        "delegators_count",
        "deterministic_key",
        "election_statistics",
        "frontier_count",
        "frontiers",
        "keepalive",
        "key_create",
        "key_expand",
        "ledger",
        "nano_to_raw",
        "node_id",
        "peers",
        "populate_backlog",
        "process",
        "raw_to_nano",
        "receivable",
        "receivable_exists",
        "receive",
        "receive_minimum",
        "receive_minimum_set",
        "representatives",
        "representatives_online",
        "republish",
        "search_receivable",
        "search_receivable_all",
        "send",
        "sign",
        "stats",
        "successors",
        "telemetry",
        "uptime",
        "validate_account_number",
        "version",
        "wallet_add",
        "wallet_add_watch",
        "wallet_balances",
        "wallet_change_seed",
        "wallet_contains",
        "wallet_create",
        "wallet_destroy",
        "wallet_export",
        "wallet_frontiers",
        "wallet_history",
        "wallet_info",
        "wallet_ledger",
        "wallet_lock",
        "wallet_locked",
        "wallet_receivable",
        "wallet_representative",
        "wallet_representative_set",
        "wallet_republish",
        "wallet_work_get",
        "work_cancel",
        "work_generate",
        "work_get",
        "work_set",
        "work_validate",
        "account_create",
        "account_list",
        "account_move",
        "account_remove",
        "account_representative_set",
        "accounts_create",
        "password_change",
        "password_enter",
        "password_valid",
        "node_id",
        "election_statistics"
      ]
    },
    "account": {
      "type": "string",
      "pattern": "^nano_[13][13456789abcdefghijkmnopqrstuwxyz]{59}$",
      "description": "A Nano account address (nano_ prefix followed by 60 base32 characters)"
    },
    "accounts": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^nano_[13][13456789abcdefghijkmnopqrstuwxyz]{59}$"
      },
      "description": "A list of Nano account addresses"
    },
    "hash": {
      "type": "string",
      "pattern": "^[0-9A-F]{64}$",
      "description": "A 64-character uppercase hex block hash"
    },
    "hashes": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[0-9A-F]{64}$"
      },
      "description": "A list of block hashes"
    },
    "wallet": {
      "type": "string",
      "pattern": "^[0-9A-F]{64}$",
      "description": "A 64-character uppercase hex wallet identifier"
    },
    "count": {
      "type": "integer",
      "minimum": 1,
      "description": "Maximum number of results to return"
    },
    "threshold": {
      "type": "string",
      "description": "Minimum amount in raw units to include in results"
    },
    "source": {
      "type": "boolean",
      "description": "Include source account information in results"
    },
    "sorting": {
      "type": "boolean",
      "description": "Sort results by balance descending"
    },
    "representative": {
      "type": ["string", "boolean"],
      "description": "Include or set representative information"
    },
    "weight": {
      "type": "boolean",
      "description": "Include voting weight in results"
    },
    "json_block": {
      "type": "string",
      "enum": ["true"],
      "description": "Return block contents as JSON object rather than string"
    },
    "key": {
      "type": "string",
      "pattern": "^[0-9A-F]{64}$",
      "description": "A 64-character uppercase hex private or public key"
    },
    "seed": {
      "type": "string",
      "pattern": "^[0-9A-F]{64}$",
      "description": "A 64-character uppercase hex wallet seed"
    },
    "work": {
      "type": "string",
      "description": "Proof-of-work value (hex)"
    },
    "difficulty": {
      "type": "string",
      "description": "Target difficulty for work generation (hex)"
    },
    "amount": {
      "type": "string",
      "description": "Amount in raw units (integer string) or Nano units"
    }
  },
  "additionalProperties": true
}