Skip to main content

Free MultiversX RPC (EGLD)

Discover MultiversX (formerly Elrond), a carbon-neutral, high-throughput Layer-1 blockchain engineered for next-generation decentralized applications, metaverse ecosystems, and enterprise-scale solutions.

99.9%
3
24/7
FREE
Gateway

Connect to MultiversX

Access reliable, enterprise-grade endpoints that power your dApp with ultra-low latency and 99.9% uptime.

Connect to MultiversX Gateway

Make your first RPC call on MultiversX's Blockchain Gateway.

Mainnet

Mainnet
Mainnet Explorer
REST API
https://multiversx-mainnet.gateway.tatum.io

Testnet

Testnet
Testnet Explorer
REST API
https://multiversx-testnet.gateway.tatum.io

Devnet

Testnet
Devnet Explorer
REST API
https://multiversx-devnet.gateway.tatum.io

* Rate limit enabled - perfect for testing and development. For production, we recommend to Upgrade.

Ready for production?

Get 200 requests/second, priority support and advanced blockchain features.

Global Load Balancer

Route to nearest node

Batch RPC Calls

Multiple requests at once

Archive Nodes

Historical blockchain data

Debug & Trace

Advanced debugging

Advanced Analytics

Usage & performance

Bring Your Own RPC

Custom RPC gateways

Upgrade
Get Free API Key

Increase your limit and access all network features in Tatum Development Platform.

Accessible to Everyone

No signup. No paywalls. Just RPC that works. Great ideas come from everywhere.

Our Mission

With love by Tatum

Method reference

MultiversX methods

Every method the MultiversX gateway accepts, grouped by interface. 184 in total, read live from the node rather than kept by hand.

Mainnet is the live MultiversX network. Every transaction it accepts is final, and every EGLD balance it reports is real money.

MultiversX runs 2 test networks here, Testnet and Devnet. All of them answer the same methods as Mainnet, so pick whichever your tooling already targets and switch the URL when you go live.

Everything below is served over REST. Its endpoint differs per network, and all of them are in the gateway list above.

What sits between you and MultiversX

A node is a machine running MultiversX with a copy of the chain. Your code cannot ask the chain directly, it asks a node. The gateway picks a healthy one for every call, so you point at one URL instead of one machine.

  • One URL, nothing to run or keep patched yourself.
  • Calls routed to a node that is up and in sync.
  • A failing node is skipped rather than returned to you as an error.

REST

184 methods
https://multiversx-mainnet.gateway.tatum.io

Every resource has its own URL, so a request is just an address you can open.

Paste it into a browser, curl it, or bookmark it. There is no body to construct and no method name to look up, and because a read is a plain GET, ordinary HTTP caching applies at the CDN and in your own client. Responses are JSON, and the path itself usually tells you what you are getting.

Where it fits

  • Getting oriented on an unfamiliar chain without writing any code first.
  • Caching, because a GET can be cached by anything sitting between you and the node.
  • Debugging, since the request that failed is a URL you can paste to a colleague.

Trade-offs

  • You get exactly what the endpoint returns. There is no way to ask for less, or for more.
  • Building a full picture takes several round trips where one batched JSON-RPC call would do.
  • Paths carry version prefixes and shift between node releases more readily than method names do.

Enabled and tested methods

Read live from the endpoint, so this is what it actually serves today rather than what the protocol allows in principle. Anything not on this list returns a method-not-found error.

GET /about
Returns the API build version and the network it is serving.
GET /about/nodes-versions
Returns how many nodes run each software version.
GET /accounts
Lists accounts, ordered by balance.
GET /accounts/{address}
Fetches an account, including balance, nonce and contract details.
GET /accounts/{address}/collections
Lists the NFT collections an account holds.
GET /accounts/{address}/collections/{collection}
Returns what an account holds within one NFT collection.
GET /accounts/{address}/collections/count
Returns how many NFT collections an account holds.
GET /accounts/{address}/contracts
Lists the contracts an account has deployed.
GET /accounts/{address}/contracts/count
Returns how many contracts an account has deployed.
GET /accounts/{address}/deferred
Returns the deferred payments owed to an account.
GET /accounts/{address}/delegation
Returns the stake an account has delegated to providers.
GET /accounts/{address}/delegation-legacy
Returns delegation held under the legacy delegation contract.
GET /accounts/{address}/deploys
Lists the contract deployments made by an account.
GET /accounts/{address}/deploys/count
Returns how many contracts an account has deployed.
GET /accounts/{address}/esdthistory
Returns the ESDT token balance history of an account.
GET /accounts/{address}/esdthistory/count
Returns how many ESDT history entries an account has.
GET /accounts/{address}/history
Returns the EGLD balance history of an account.
GET /accounts/{address}/history/{tokenIdentifier}
Returns the balance history of one token for an account.
GET /accounts/{address}/history/{tokenIdentifier}/count
Returns how many history entries exist for one token on an account.
GET /accounts/{address}/history/count
Returns how many balance history entries an account has.
GET /accounts/{address}/keys
Returns the validator keys registered by an account.
GET /accounts/{address}/nfts
Lists the NFTs, SFTs and meta-ESDTs an account holds.
GET /accounts/{address}/nfts/{nft}
Returns one NFT held by an account.
GET /accounts/{address}/nfts/count
Returns how many NFTs an account holds.
GET /accounts/{address}/results
Lists the smart contract results involving an account.
GET /accounts/{address}/results/{scHash}
Returns one smart contract result involving an account.
GET /accounts/{address}/results/count
Returns how many smart contract results involve an account.
GET /accounts/{address}/roles/collections
Lists the NFT collections an account holds roles over.
GET /accounts/{address}/roles/collections/{collection}
Returns the roles an account holds over one collection.
GET /accounts/{address}/roles/collections/count
Returns how many collections an account holds roles over.
GET /accounts/{address}/roles/tokens
Lists the tokens an account holds roles over.
GET /accounts/{address}/roles/tokens/{identifier}
Returns the roles an account holds over one token.
GET /accounts/{address}/roles/tokens/count
Returns how many tokens an account holds roles over.
GET /accounts/{address}/stake
Reports the amount an account has staked.
GET /accounts/{address}/tokens
Lists the fungible ESDT tokens an account holds.
GET /accounts/{address}/tokens/{token}
Returns the balance of one token held by an account.
GET /accounts/{address}/tokens/count
Returns how many token types an account holds.
GET /accounts/{address}/transactions
Lists the transactions involving an account.
GET /accounts/{address}/transactions/count
Returns how many transactions involve an account.
GET /accounts/{address}/transfers
Lists the value transfers involving an account, including token moves.
GET /accounts/{address}/transfers/count
Returns how many transfers involve an account.
GET /accounts/{address}/upgrades
Lists the contract upgrades performed by an account.
GET /accounts/{address}/verification
Returns the source verification status of a deployed contract.
GET /accounts/{address}/waiting-list
Returns the waiting-list position of nodes belonging to an account.
GET /accounts/count
Reports the total number of accounts.
GET /address/{address}
Returns the raw node view of an account.
GET /address/{address}/balance
Returns the EGLD balance of an account.
GET /address/{address}/esdt
Returns every ESDT token held by an account.
GET /address/{address}/guardian-data
Returns the guardian configured to co-sign for an account.
GET /address/{address}/key/{key}
Reads one storage key from a contract account.
GET /address/{address}/keys
Reads the full storage of a contract account.
GET /address/{address}/nonce
Returns the next nonce for an account.
GET /address/{address}/shard
Returns the shard an account belongs to.
GET /applications
Lists the registered applications.
GET /applications/{address}
Looks up one registered application.
GET /applications/count
Returns how many applications are registered.
GET /batch/{address}
Returns the transaction batches submitted by an account.
GET /batch/{address}/{id}
Returns one transaction batch submitted by an account.
GET /block/{shard}/by-hash/{hash}
Returns a shard block by its hash.
GET /block/{shard}/by-nonce/{nonce}
Returns a shard block by its nonce.
GET /blocks
Returns a range of blocks with their extrinsics and events.
GET /blocks/{hash}
Fetches a block by its hash.
GET /blocks/count
Reports the total number of blocks.
GET /blocks/latest
Returns the most recent block.
GET /collections
Lists the NFT collections on the network.
GET /collections/{collection}
Looks up one NFT collection and its properties.
GET /collections/{collection}/nfts
Lists the NFTs in a collection.
GET /collections/{collection}/nfts/count
Returns how many NFTs a collection contains.
GET /collections/{collection}/ranks
Returns the rarity ranking of NFTs in a collection.
GET /collections/{collection}/transactions
Lists the transactions involving a collection.
GET /collections/{collection}/transactions/count
Returns how many transactions involve a collection.
GET /collections/{collection}/transfers
Lists the transfers of NFTs in a collection.
GET /collections/{collection}/transfers/count
Returns how many transfers involve a collection.
GET /collections/{identifier}/accounts
Lists the accounts holding NFTs from a collection.
GET /collections/count
Returns how many NFT collections exist.
GET /constants
Provides the protocol constants such as gas limits and denomination.
GET /dapp/config
Provides the configuration a dApp needs to connect to this network.
GET /delegation
Gives network-wide delegation statistics.
GET /delegation-legacy
Returns statistics for the legacy delegation contract.
GET /economics
Provides supply, staking and inflation figures for the network.
GET /events
Lists chain events.
GET /events/{txHash}
Returns the events emitted by a transaction.
GET /events/count
Returns how many events have been recorded.
GET /hello
A liveness check that confirms the API is responding.
GET /hyperblock/by-hash/{hash}
Returns a hyperblock, which bundles one metablock with its shard blocks, by hash.
GET /hyperblock/by-nonce/{nonce}
Returns a hyperblock by its nonce.
GET /identities
Lists validator identities, ranked by stake.
GET /identities/{identifier}
Resolves one validator identity and the nodes behind it.
GET /identities/{identifier}/avatar
Returns the avatar image of a validator identity.
GET /keys/{key}/unbond-period
Reports how long a validator key must wait before unbonding.
GET /mex/economics
Returns economics for the xExchange decentralised exchange.
GET /mex/farms
Lists the yield farms on xExchange.
GET /mex/farms/count
Returns how many farms xExchange offers.
GET /mex/pairs
Lists the trading pairs on xExchange.
GET /mex/pairs/{baseId}/{quoteId}
Looks up one xExchange trading pair.
GET /mex/pairs/count
Returns how many trading pairs xExchange offers.
GET /mex/tokens
Lists the tokens traded on xExchange.
GET /mex/tokens/{identifier}
Looks up one token as traded on xExchange.
GET /mex/tokens/count
Returns how many tokens trade on xExchange.
GET /mex/tokens/prices/daily/{identifier}
Returns the daily price history of a token on xExchange.
GET /mex/tokens/prices/hourly/{identifier}
Returns the hourly price history of a token on xExchange.
GET /miniblocks
Lists miniblocks, which are the per-shard units a block is assembled from.
GET /miniblocks/{miniBlockHash}
Returns one miniblock by its hash.
GET /network/config
Provides the network configuration, including chain ID and gas settings.
GET /network/economics
Provides supply, staking and inflation figures from the node.
GET /network/gas-configs
Returns the gas cost schedule for built-in operations.
GET /network/status/{shard}
Returns the current round, epoch and nonce for a shard.
GET /nfts
Lists the NFTs, SFTs and meta-ESDTs on the network.
GET /nfts/{identifier}
Fetches one NFT and its metadata.
GET /nfts/{identifier}/accounts
Lists the accounts holding an NFT.
GET /nfts/{identifier}/accounts/count
Returns how many accounts hold an NFT.
GET /nfts/{identifier}/supply
Returns the supply of an NFT or SFT.
GET /nfts/{identifier}/thumbnail
Returns the thumbnail image of an NFT.
GET /nfts/{identifier}/transactions
Lists the transactions involving an NFT.
GET /nfts/{identifier}/transactions/count
Returns how many transactions involve an NFT.
GET /nfts/{identifier}/transfers
Lists the transfers of an NFT.
GET /nfts/{identifier}/transfers/count
Returns how many times an NFT has been transferred.
GET /nfts/count
Returns how many NFTs exist.
GET /node/heartbeatstatus
Returns the heartbeat status reported by every node.
GET /node/waiting-epochs-left/{key}
Returns how many epochs a queued validator key must still wait.
GET /nodes
Lists the validator and observer nodes.
GET /nodes/{bls}
Resolves one node by its BLS key.
GET /nodes/count
Reports how many nodes are in the network.
GET /nodes/versions
Returns the share of nodes running each software version.
GET /pool
Lists the transactions waiting in the pool.
GET /pool/{txhash}
Returns one pooled transaction by hash.
GET /pool/count
Returns how many transactions are waiting in the pool.
GET /providers
Lists the staking providers.
GET /providers/{address}
Reports one staking provider.
GET /providers/{address}/accounts
Lists the accounts delegating to a provider.
GET /providers/{address}/accounts/count
Returns how many accounts delegate to a provider.
GET /providers/{address}/avatar
Returns the avatar image of a staking provider.
GET /results
Lists smart contract results.
GET /results/{scHash}
Returns one smart contract result by hash.
GET /results/count
Returns how many smart contract results exist.
GET /rounds
Lists consensus rounds.
GET /rounds/{shard}/{round}
Returns one consensus round in a shard.
GET /rounds/count
Reports how many rounds have elapsed.
GET /shards
Lists the shards and their current status.
GET /stake
Gives network-wide staking totals.
GET /stats
Gives headline network statistics such as accounts, blocks and transactions.
GET /tags
Lists the NFT tags in use.
GET /tags/{tag}
Reports one NFT tag and how often it appears.
GET /tags/count
Returns how many NFT tags are in use.
GET /tokens
Lists the fungible ESDT tokens on the network.
GET /tokens/{identifier}
Fetches one token and its properties.
GET /tokens/{identifier}/accounts
Lists the accounts holding a token.
GET /tokens/{identifier}/accounts/count
Returns how many accounts hold a token.
GET /tokens/{identifier}/logo/png
Returns the token logo as a PNG.
GET /tokens/{identifier}/logo/svg
Returns the token logo as an SVG.
GET /tokens/{identifier}/supply
Returns the minted, burnt and circulating supply of a token.
GET /tokens/{identifier}/transactions
Lists the transactions involving a token.
GET /tokens/{identifier}/transactions/count
Returns how many transactions involve a token.
GET /tokens/{identifier}/transfers
Lists the transfers of a token.
GET /tokens/{identifier}/transfers/count
Returns how many times a token has been transferred.
GET /tokens/count
Returns how many fungible tokens exist.
GET /transaction/{txHash}
Fetches a transaction as the node sees it.
GET /transaction/{txHash}/process-status
Returns how far a transaction has progressed through processing.
GET /transaction/{txHash}/status
Returns the status of a transaction.
GET /transactions
Lists transactions, newest first.
GET /transactions/{txHash}
Returns one transaction, with its results and logs.
GET /transactions/count
Reports how many transactions the chain has processed.
GET /transactions/ppu/{shardId}
Returns the price-per-unit fee distribution for a shard.
GET /transfers
Lists value transfers, including token moves.
GET /transfers/count
Reports how many transfers have occurred.
GET /usernames/{username}
Resolves a herotag username to the account behind it.
GET /validator/statistics
Gives per-validator performance statistics.
GET /waiting-list
Lists the nodes queued to become validators.
GET /waiting-list/count
Reports how many nodes are queued to become validators.
GET /websocket/config
Returns the websocket endpoint clients should connect to.
POST /assets
Uploads or updates asset metadata.
POST /assets/auth
Authenticates a request to modify asset metadata.
POST /assets/convert
Converts asset metadata between supported formats.
POST /batch
Submits a batch of transactions together.
POST /contract-assets
Uploads or updates metadata describing a contract.
POST /nfts/process
Triggers reprocessing of NFT media and metadata.
POST /query
Runs a read-only query against a smart contract.
POST /transaction/cost
Estimates the gas a transaction will consume.
POST /transaction/send
Submits a signed transaction.
POST /transaction/send-multiple
Submits several signed transactions in one request.
POST /transaction/send-user-funds
Requests test funds on a development network.
POST /transaction/simulate
Runs a transaction without committing it, returning the outcome.
POST /transactions
Submits one or more signed transactions.
POST /transactions/decode
Decodes a transaction into readable fields.

Common REST errors

What you are most likely to hit calling this interface, and what to do about it.

400
Bad request. A path or query parameter is malformed. Check the parameter format, and that path values are URL-encoded.
404
Not found. Either the path is wrong, or the resource genuinely does not exist at that height. Confirm the path against the list above. A valid path can still 404 for pruned history on a non-archive node.
429
Rate limited. You have exceeded the free tier request allowance. Back off and retry. REST responses cache well, so caching on your side removes most repeat traffic.
500
Internal server error. The node failed while handling the request. Retry with backoff.
503
Service unavailable. The node is starting, resyncing, or temporarily out of rotation. Retry with backoff; this is normally short-lived.
Blockchain Data

Indexed MultiversX Data Insights

Complete on-chain data access, no infrastructure to run yourself. Query wallets, tokens, NFTs, and transaction history with lightning-fast APIs.

Learn more

About MultiversX

What it is, and guides for building on it.

MultiversX (formerly Elrond) is a carbon-neutral, high-throughput Layer-1 blockchain built on adaptive state sharding and Secure Proof-of-Stake, enabling up to 100,000 TPS with ~6s finality and ultra-low fees. Its RPC and API layers give developers powerful tools to query blockchain data, broadcast transactions, and interact with smart contracts, tokens, and NFTs. With over 3,000 validator nodes and modular frameworks like Sovereign Chain SDK and xPortal, MultiversX supports everything from DeFi to large-scale metaverse applications.

FAQ

Frequently Asked Questions

Everything you need to know about MultiversX RPC endpoints

Quick Answer: What is MultiversX RPC?

RPC (Remote Procedure Call) is the standard way to interact with the network programmatically - reading on-chain data, submitting transactions, and deploying smart contracts through JSON-RPC calls. The free tier ships 5 requests per minute with no registration required, which covers most learning and testing workflows. Production applications typically move to Tatum Premium for 200 requests per second and enterprise-grade reliability.

What is MultiversX RPC?

RPC (Remote Procedure Call) is the interface that lets developers interact with the network: read on-chain data, submit transactions, and deploy smart contracts programmatically over standard JSON-RPC methods, without running your own node.

How do I connect to MultiversX using these RPC endpoints?

Simply copy the RPC endpoint URL from above and configure it in your Web3 library (ethers.js, web3.js), wallet (MetaMask, Trust Wallet), or development tool (Hardhat, Truffle). The endpoint works immediately with no registration required for the free tier.

What are the rate limits for the free RPC tier?

Free tier RPC endpoints are limited to 5 requests per minute. This is perfect for testing and development. For production applications, we recommend upgrading to Tatum Premium which offers 200 requests per second with no daily limits.

When should I upgrade to Premium?

Consider upgrading to Premium when you're moving to production, need higher rate limits (200 req/sec), require 99.9% uptime SLA, want access to archive nodes for historical data, or need advanced features like batch RPC calls, debug/trace methods, and priority support.

Is MultiversX RPC free forever?

Yes! Our free tier RPC endpoints are free forever with 5 requests per minute. This tier is perfect for learning, testing, and small projects. There are no hidden fees or time limits on the free tier.

What happens if I exceed the free tier rate limit?

If you exceed 5 requests per minute on the free tier, you'll receive an HTTP 429 (Too Many Requests) error. This is a standard rate limiting response. To avoid this, you can upgrade to Tatum Premium which offers 200 requests per second with no daily limits, perfect for production applications.

Can I use these MultiversX RPC endpoints with MetaMask?

Yes! You can configure MetaMask to use our RPC endpoints. Simply copy the endpoint URL from above, go to MetaMask Settings > Networks > Add Network (or edit existing), and paste the RPC URL. This works with all EVM-compatible networks, including this one.

Are these RPC endpoints secure?

Yes, all our RPC endpoints use HTTPS encryption and follow enterprise-grade security practices. They're powered by Tatum's infrastructure which maintains 99.9% uptime.

What's the difference between mainnet and testnet RPC endpoints?

Mainnet carries real transactions with real value, so every write is final. Testnet runs on a separate network funded with free test tokens, which makes it the safe place to try new code, retry failed calls, and simulate edge cases. Always validate on testnet before pointing production traffic at mainnet.

How do I troubleshoot RPC connection errors?

If you're experiencing connection errors, check: 1) The RPC endpoint URL is correct, 2) You're not exceeding rate limits (5 req/min for free tier), 3) Your network allows HTTPS connections, 4) The network is currently operational. For persistent issues, check our status page or contact support.

Can I use these endpoints in production?

Free tier endpoints can be used in production for low-traffic applications (under 5 req/min). For production apps with higher traffic, we strongly recommend Tatum Premium for guaranteed uptime, faster rate limits, and enterprise SLA.
Related Blockchains

Discover RPC endpoints for other popular blockchain networks