Skip to main content
Get started with a reliable Avalanche RPC endpoint to use the tools below.

Endpoint structure

Avalanche runs three built-in chains (C, X, P) on the same node. Your Chainstack base endpoint serves all three — to target a specific chain, append the chain-specific URI before your auth key. The URL pattern is:
The most common reason an Avalanche endpoint “doesn’t work” is forgetting the chain URI. The node access page in the Chainstack console shows the full URL for each chain — copy from there to avoid path errors.

C-Chain HTTPS

To call EVM methods, use the C-Chain HTTPS endpoint:

C-Chain WebSocket

For real-time subscriptions, connect over WSS to the C-Chain WSS endpoint:

C-Chain

MetaMask

On node access details, click Connect wallet.

Hardhat

Configure Hardhat to deploy contracts and interact through your Avalanche nodes.
  1. Install Hardhat and create a project.
  2. Create a new environment in hardhat.config.js:
    where
    • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS or WSS endpoint protected either with the key or password. See node access details.
    • YOUR_PRIVATE_KEY — the private key of the account that you use to deploy the contract
  3. Run npx hardhat run scripts/deploy.js --network chainstack and Hardhat will deploy using Chainstack.
See also Forking EVM-compatible mainnet with Hardhat.

Remix IDE

To make Remix IDE interact with the network through a Chainstack node:
  1. Get MetaMask and set it to interact through a Chainstack node. See Interacting through MetaMask.
  2. In Remix IDE, navigate to the Deploy tab. Select Injected Provider - MetaMask in Environment.
This will engage MetaMask and make Remix IDE interact with the network through a Chainstack node.

web3.py

Build DApps using web3.py and Avalanche nodes deployed with Chainstack.
  1. Install web3.py.
  2. Connect over HTTP or WebSocket. See also EVM node connection: HTTP vs WebSocket.

HTTP

Use the HTTPProvider to connect to your node endpoint and get the latest block number.
where
  • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS endpoint protected either with the key or password
  • HOSTNAME — your node HTTPS endpoint hostname
  • USERNAME — your node access username (for password-protected endpoints)
  • PASSWORD — your node access password (for password-protected endpoints)
See also node access details.

WebSocket

Use the WebsocketProvider object to connect to your node WSS endpoint and get the latest block number.
where
  • YOUR_CHAINSTACK_ENDPOINT — your node WSS endpoint protected either with the key or password
  • HOSTNAME — your node WSS endpoint hostname
  • USERNAME — your node access username (for password-protected endpoints)
  • PASSWORD — your node access password (for password-protected endpoints)
See also WebSocket connection to an EVM node.

web3.php

Build DApps using web3.php and Avalanche nodes deployed with Chainstack.
  1. Install web3.php.
  2. Connect over HTTP:
    where YOUR_CHAINSTACK_ENDPOINT is your node HTTPS endpoint protected either with the key or password
  3. Use JSON-RPC methods to interact with the node. Example to get the latest block number:

web3j

Build DApps using web3j and Avalanche nodes deployed with Chainstack. Use the HttpService object to connect to your node endpoint. Example to get the latest block number:
where
  • ENDPOINT — your node HTTPS endpoint
  • USERNAME — your node access username
  • PASSWORD — your node access password
See also the full code on GitHub.

ethers.js

Build DApps using ethers.js and Avalanche nodes deployed with Chainstack.
  1. Install ethers.js.
  2. Connect over HTTP or WebSocket. See also EVM node connection: HTTP vs WebSocket.

HTTP

Use the JsonRpcProvider object to connect to your node endpoint and get the latest block number:
where
  • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS endpoint protected either with the key or password
  • USERNAME — your node access username (for password-protected endpoints)
  • PASSWORD — your node access password (for password-protected endpoints)
  • NETWORK_ID — Avalanche C-Chain network ID:
    • Mainnet: 43114
    • Fuji Testnet: 43113
See also node access details.

WebSocket

Use the WebSocketProvider object to connect to your node WSS endpoint and get the latest block number:
where
  • YOUR_CHAINSTACK_ENDPOINT — your node WSS endpoint endpoint protected either with the key or password
  • NETWORK_ID — Avalanche C-Chain network ID:
    • Mainnet: 43114
    • Fuji Testnet: 43113
See also node access details.

Brownie

  1. Install Brownie.
  2. Use the brownie networks add command with the node endpoint:
    where
    • ID — any name that you will use as the network tag to run a deployment. For example, chainstack-mainnet.
    • NETWORK_NAME — any name that you want to identify the network by in the list of networks. For example, Mainnet (Chainstack).
    • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS or WSS endpoint protected either with the key or password
    • NETWORK_ID — Avalanche C-Chain network ID:
      • Mainnet: 43114
      • Fuji Testnet: 43113
Example to run the deployment script:

Foundry

  1. Install Foundry.
  2. Use --rpc-url to run the operation through your Chainstack node.

Forge

Use forge to develop, test, and deploy your smart contracts. To deploy a contract:
where
  • CONTRACT_NAME — name of the contract in the Solidity source code
  • CONTRACT_PATH — path to your smart contract
  • YOUR_PRIVATE_KEY — the private key to your funded account that you will use to deploy the contract
  • YOUR_CHAINSTACK_ENDPOINT — your node HTTPS endpoint protected either with the key or password

Cast

Use cast to interact with the network and the deployed contracts. To get the latest block number:
where YOUR_CHAINSTACK_ENDPOINT is your node HTTPS endpoint protected either with the key or password

X-Chain

JSON-RPC API

Interact with the X-Chain through your Avalanche nodes using JSON-RPC API. Use curl or Postman to invoke Avalanche X-Chain API methods. Example below demonstrates how to get AVAX balance of an address through your Avalanche node HTTPS endpoint on the X-Chain mainnet:
where YOUR_CHAINSTACK_ENDPOINT is your node HTTPS endpoint protected either with the key or password

AvalancheJS

  1. Install AvalancheJS.
  2. Use AvalancheJS examples to interact with the X-Chain through your Avalanche node with the following settings:
where
  • BASE_ENDPOINT — your node key-protected endpoint without the https prefix and the ext postfix. For example, nd-123-456-789.p2pify.com/3c6e0b8a9c15224a8228b9a98ca1531d.
  • CHAIN_ID — the chain ID of the network you are connecting to:
    • Mainnet: 43114
    • Fuji Testnet: 43113
Make sure you remove const port and change port to null in the default example. Example to get AVAX balance of an address through your Avalanche node HTTPS endpoint on the X-Chain mainnet:
Last modified on June 25, 2026