Free The Open Network RPC (TON)
This guide will walk you through reading data from TON Blockchain. You'll learn how to fetch account information, call `get methods`, and retrieve account transactions.
Connect to The Open Network
Access reliable, enterprise-grade endpoints that power your dApp with ultra-low latency and 99.9% uptime.
Connect to The Open Network Gateway
Make your first RPC call on The Open Network's Blockchain Gateway.
Testnet
Testnet* Rate limit enabled - perfect for testing and development. For production, we recommend to Upgrade.
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
Increase your limit and access all network features in Tatum Development Platform.
No signup. No paywalls. Just RPC that works. Great ideas come from everywhere.
With love by Tatum
The Open Network methods
Every method the The Open Network gateway accepts, grouped by interface. 53 in total, read live from the node rather than kept by hand.
Mainnet is the live The Open Network network. Every transaction it
accepts is final, and every TON balance it
reports is real money.
Testnet answers the same methods on a network funded with tokens that have no market value. Develop there, then change the URL to Mainnet when the code is stable. Nothing else about your integration has to change.
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 The Open Network
A node is a machine running The Open Network 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
53 methodsEvery 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 /accountStates
- Returns the state of several accounts in one request.
- GET /actions
- Lists decoded actions, which group raw messages into meaningful operations.
- GET /addressBook
- Returns the address book entries for a set of addresses.
- GET /addressInformation
- Returns the balance, state and code of an account.
- GET /adjacentTransactions
- Returns the transactions immediately before and after a given one.
- GET /blocks
- Returns a range of blocks with their extrinsics and events.
- GET /detectAddress
- Reports which address formats a string is valid in.
- GET /events
- Lists chain events.
- GET /getAddressBalance
- Returns the balance of an account.
- GET /getAddressInformation
- Returns the balance, state and code of an account.
- GET /getAddressState
- Returns whether an account is uninitialised, active or frozen.
- GET /getBlockHeader
- Returns the header of a block.
- GET /getBlockTransactions
- Lists the transactions in a block.
- GET /getBlockTransactionsExt
- Lists the transactions in a block with their full bodies.
- GET /getConfigParam
- Returns one network configuration parameter.
- GET /getConsensusBlock
- Returns the block the network currently agrees on.
- GET /getExtendedAddressInformation
- Returns account information with the wallet type decoded.
- GET /getMasterchainBlockSignatures
- Returns the validator signatures on a masterchain block.
- GET /getMasterchainInfo
- Returns the newest and oldest masterchain blocks the node holds.
- GET /getShardBlockProof
- Returns a proof linking a shard block to the masterchain.
- GET /getTokenData
- Returns the data of a jetton or NFT contract.
- GET /getTransactions
- Returns the transactions of an account.
- GET /getWalletInformation
- Returns wallet balance, sequence number and detected wallet type.
- GET /jetton/burns
- Lists jetton burn events.
- GET /jetton/masters
- Lists jetton master contracts and their metadata.
- GET /jetton/transfers
- Lists jetton transfer events.
- GET /jetton/wallets
- Lists jetton wallet contracts and their balances.
- GET /lookupBlock
- Finds a block by workchain, shard and sequence number, time or logical time.
- GET /masterchainBlockShards
- Lists the shard blocks a masterchain block commits to.
- GET /masterchainBlockShardState
- Returns the shard state referenced by a masterchain block.
- GET /masterchainInfo
- Returns the newest and oldest masterchain blocks the node holds.
- GET /messages
- Lists messages, the units of communication between TON contracts.
- GET /nft/collections
- Lists NFT collections and their metadata.
- GET /nft/items
- Lists NFT items and their owners.
- GET /nft/transfers
- Lists NFT transfer events.
- GET /packAddress
- Converts a raw address into its user-friendly form.
- GET /topAccountsByBalance
- Lists the accounts holding the largest balances.
- GET /transactions
- Lists transactions, newest first.
- GET /transactionsByMasterchainBlock
- Lists the transactions committed under a masterchain block.
- GET /transactionsByMessage
- Finds the transactions that produced or consumed a message.
- GET /tryLocateResultTx
- Finds the transaction that received a given outgoing message.
- GET /tryLocateSourceTx
- Finds the transaction that sent a given incoming message.
- GET /tryLocateTx
- Finds the transaction matching a source, destination and logical time.
- GET /unpackAddress
- Converts a user-friendly address into its raw form.
- GET /walletInformation
- Returns wallet balance, sequence number and detected wallet type.
- GET /walletStates
- Returns wallet state for several addresses in one request.
- POST /estimateFee
- Estimates the fees a message will incur.
- POST /jsonRPC
- Accepts any of these methods as a JSON-RPC call on a single endpoint.
- POST /message
- Submits a signed external message to the network.
- POST /runGetMethod
- Calls a get method on a contract, read-only.
- POST /sendBoc
- Submits a signed message serialised as a bag of cells.
- POST /sendBocReturnHash
- Submits a bag-of-cells message and returns the resulting hash.
- POST /sendQuery
- Submits a query message to a contract.
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.
Indexed The Open Network Data Insights
Complete on-chain data access, no infrastructure to run yourself. Query wallets, tokens, NFTs, and transaction history with lightning-fast APIs.
About The Open Network
What it is, and guides for building on it.
The TON API documentation provides developers with the tools to interact programmatically with The Open Network blockchain. It covers fetching account information, calling smart contract `get methods` for precise data retrieval, and fetching account transactions. The API utilizes HTTP-based JSON-RPC endpoints, with TON Center being a recommended provider. This interface is essential for building decentralized applications that need to read and interact with the TON blockchain efficiently.
What's new at Tatum on The Open Network?
Notifications: Robinhood
Robinhood Chain is now live on Tatum’s Blockchain Notifications, with support for all notification types. Receive onc...
RPC Gateway: WebSockets for Arbitrum and BSC
Stop polling. Start streaming. Tatum WebSocket subscriptions push blockchain updates to your app over a persistent co...
Harmony Networks Removal
Tatum is decommissioning its hosted Harmony Mainnet S0, Harmony Testnet S0, and Harmony Devnet S0 RPC services follow...
Frequently Asked Questions
Everything you need to know about The Open Network RPC endpoints
Quick Answer: What is The Open Network 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 The Open Network RPC?
How do I connect to The Open Network using these RPC endpoints?
What are the rate limits for the free RPC tier?
Is The Open Network RPC free forever?
What happens if I exceed the free tier rate limit?
Can I use these The Open Network RPC endpoints with MetaMask?
Are these RPC endpoints secure?
What's the difference between mainnet and testnet RPC endpoints?
How do I troubleshoot RPC connection errors?
Can I use these endpoints in production?
Explore Other Blockchains
Discover RPC endpoints for other popular blockchain networks