Available Now

Hanzo Nodes

Managed RPC endpoints for every chain

Access blockchain data without running your own infrastructure. High-availability nodes for Lux, Ethereum, Polygon, Avalanche, Solana, and more—with realtime subscriptions and historical queries.

Multi-Chain Support

RPC endpoints for Lux, EVM chains, Solana, Cosmos, and more. One API for all networks.

Archive Nodes

Access historical blockchain state and data from genesis. Full archive node access included.

WebSocket Subscriptions

Real-time event subscriptions for new blocks, transactions, and contract events.

Ultra-Low Latency

Global edge distribution ensures sub-50ms response times from anywhere in the world.

Back to Web3 Overview

Get Your API Key

Start building in under 5 minutes

99.999%
Uptime
<50ms
Latency
100+
Chains

No credit card required. Free tier includes 300M compute units/month.

Trusted by developers building:

DeFiNFTsPaymentsGamingAI Agents

Key Capabilities

Everything you need, nothing you don't.

Multi-Chain Support

RPC endpoints for Lux, EVM chains, Solana, Cosmos, and more. One API for all networks.

Archive Nodes

Access historical blockchain state and data from genesis. Full archive node access included.

WebSocket Subscriptions

Real-time event subscriptions for new blocks, transactions, and contract events.

Ultra-Low Latency

Global edge distribution ensures sub-50ms response times from anywhere in the world.

99.9% Uptime SLA

Enterprise-grade reliability with automatic failover and redundancy across regions.

Rate Limiting & Load Balancing

Built-in rate limiting, request queuing, and intelligent load balancing.

Auto-Scaling

Automatically scales to handle traffic spikes without configuration.

Analytics Dashboard

Monitor RPC usage, latency metrics, and error rates in real-time.

Rollup Support

Native support for L2s including Arbitrum, Optimism, Base, zkSync, and more.

Simple to Integrate

Get started with just a few lines of code. SDKs for every language.

MultiChainClient.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;

import "@hanzo/nodes/IChainlinkOracle.sol";
import "@hanzo/nodes/ILayerZeroEndpoint.sol";

/// @title MultiChainClient - Cross-chain RPC client patterns
/// @notice Demonstrates patterns for cross-chain communication via nodes
contract MultiChainClient {
    // Chainlink oracle for cross-chain data
    IChainlinkOracle public oracle;

    // LayerZero endpoint for cross-chain messaging
    ILayerZeroEndpoint public lzEndpoint;

    // Chain ID mappings
    mapping(uint256 => bool) public supportedChains;
    mapping(uint256 => address) public remoteContracts;

    event CrossChainRequest(
        uint256 indexed targetChain,
        bytes32 indexed requestId,
        bytes payload
    );

    event CrossChainResponse(
        uint256 indexed sourceChain,
        bytes32 indexed requestId,
        bytes response
    );

    constructor(address _oracle, address _lzEndpoint) {
        oracle = IChainlinkOracle(_oracle);
        lzEndpoint = ILayerZeroEndpoint(_lzEndpoint);
    }

    // Register a supported chain
    function addChain(uint256 chainId, address remoteContract) external {
        supportedChains[chainId] = true;
        remoteContracts[chainId] = remoteContract;
    }

    // Request data from another chain via oracle
    function requestCrossChainData(
        uint256 targetChain,
        bytes calldata query
    ) external returns (bytes32 requestId) {
        require(supportedChains[targetChain], "Chain not supported");

        requestId = oracle.requestData(
            targetChain,
            remoteContracts[targetChain],
            query,
            this.handleOracleResponse.selector
        );

        emit CrossChainRequest(targetChain, requestId, query);
    }

    // Handle oracle response callback
    function handleOracleResponse(
        bytes32 requestId,
        uint256 sourceChain,
        bytes calldata response
    ) external {
        require(msg.sender == address(oracle), "Only oracle");
        emit CrossChainResponse(sourceChain, requestId, response);
        // Process response data
    }

    // Send message to another chain via LayerZero
    function sendCrossChainMessage(
        uint16 dstChainId,
        bytes calldata payload
    ) external payable {
        bytes memory remoteAndLocalAddresses = abi.encodePacked(
            remoteContracts[dstChainId],
            address(this)
        );

        lzEndpoint.send{value: msg.value}(
            dstChainId,
            remoteAndLocalAddresses,
            payload,
            payable(msg.sender),
            address(0),
            bytes("")
        );
    }

    // Get current block number (for demonstration)
    function getBlockInfo() external view returns (
        uint256 blockNumber,
        uint256 timestamp,
        uint256 chainId
    ) {
        return (block.number, block.timestamp, block.chainid);
    }
}

Built For

DeFi Applications

Build decentralized exchanges, lending protocols, and yield aggregators with reliable blockchain data access.

NFT Marketplaces

Power NFT minting, trading, and metadata retrieval with fast, reliable node infrastructure.

Wallet Applications

Fetch balances, transaction history, and broadcast transactions for multi-chain wallets.

Analytics Platforms

Query historical data for blockchain analytics, portfolio tracking, and market intelligence.

Supported Chains

Lux
Ethereum
Polygon
Arbitrum
Optimism
Base
Avalanche
BNB Chain
Solana
Cosmos
zkSync
Scroll

Start Building with Hanzo Nodes

Get your free API key and ship your first request in under 5 minutes. No credit card required.

Get Hanzo Nodes

Deploy in seconds or self-host with the open-source release.