Skip to main content
RGB Node is a self-hosted REST service for applications that need on-chain RGB functionality without embedding the full RGB protocol stack. It manages watch-only wallets, exposes wallet and asset operations, and never holds private keys or signs transactions.
Source repository: UTEXO-Protocol/rgb-node-api.
RGB Node supports NIA (Non-Inflatable Asset) issuance only. For CFA or UDA assets, use the RGB Lightning Node.

Who should use RGB Node

  • Backend operators can integrate RGB Node into exchange, settlement, or custody infrastructure that needs watch-only RGB wallet access.
  • Wallet and client applications should normally integrate through the Utexo SDK. The SDK exposes the same core RGB functionality without requiring the application team to operate node infrastructure directly.
RGB Node does not provide Lightning channels or Lightning payments. Use RGB Lightning Node when those capabilities are required.

What RGB Node provides

Architecture: watch-only, external signing

RGB Node keeps the custody boundary on the client side:
  1. The client identifies a wallet with xpub-van, xpub-col, and master-fingerprint.
  2. POST /wallet/register creates or loads the corresponding watch-only wallet context.
  3. For UTXO creation or asset sends, a *begin endpoint returns an unsigned PSBT.
  4. The client signs the PSBT outside RGB Node.
  5. The matching *end endpoint finalizes the operation with the signed PSBT.
The wallet-identification headers are not credentials. They select wallet state but do not authenticate or authorize the caller.
Deploy RGB Node only within infrastructure you control. Protect it with TLS and an authentication or private-network layer, and restrict access to xPubs, wallet activity, and UTXO metadata. Do not expose the service directly to untrusted clients.

External dependencies

An RGB Node deployment requires:
  • A Bitcoin RPC endpoint
  • An Electrum- or Esplora-compatible indexer
  • One or more RGB transport or proxy endpoints
  • Persistent storage for watch-only wallet state
  • A client-side signer for PSBT operations
The repository includes a local regtest profile and helper commands for starting bitcoind, electrs, and rgb-proxy.

Underlying library

RGB Node uses Utexo’s rgb-lib integration for RGB state management and PSBT construction. Most integrators interact with the REST API rather than calling the library directly.

Next step

Use the RGB Node API reference for configuration, endpoints, request headers, signing flows, and error behavior.