Start building on
The Open Network

Discover how TON Blockchain and its wider ecosystem work, as well as how to develop decentralized apps and create smart contracts.

Build Mini Apps
Develop Smart Contracts

Unlock access to 950 million Telegram audience

Your app can gain access to millions of Telegram users with a one-click app launch, direct advertising, viral and retention messenger mechanics.

video poster

Set up TON SDK

Download the SDK for the most convenient language to develop on TON.

Javascript
Python
Go
Java/Kotlin
import { TonClient, WalletContractV4 } from "@ton/ton"; import { mnemonicNew, mnemonicToPrivateKey } from "@ton/crypto"; import { getHttpEndpoint } from "@orbs-network/ton-access"; // get the decentralized RPC endpoint const endpoint = await getHttpEndpoint(); const client = new TonClient({ endpoint }); // Generate new key let mnemonics = await mnemonicNew(); let keyPair = await mnemonicToPrivateKey(mnemonics); let wallet = WalletContractV4.create({ 0, publicKey: keyPair.publicKey }); let walletContract = client.open(wallet); let balance: bigint = await walletContract.getBalance(); console.log(balance) // Get balance
# get client client = LsClient(ls_index=2, default_timeout=20) await client.init_tonlib() # init wallet my_wallet_mnemonics = [...] # mnemonics my_wallet = Wallet(provider=client, mnemonics=my_wallet_mnemonics, version='v4r2') # get balance my_wallet_nano_balance = await my_wallet.get_balance() print(my_wallet_nano_balance)
// connect to mainnet lite server client := liteclient.NewConnectionPool() err := client.AddConnection(context.Background(), "135.181.140.212:13206", "K0t3+IWLOXHYMvMcrGZDPs+pn58a17LFbnXoQkKc2xw=") api := ton.NewAPIClient(client) ctx := client.StickyContext(context.Background()) // init wallet words := strings.Split("birth ... then", " ") w, err := wallet.FromSeed(api, words, wallet.V3) // get balance block, err := api.CurrentMasterchainInfo(ctx) balance, err := w.GetBalance(ctx, block) log.Println("Balance:", balance)
try (LiteClient liteClient = new LiteClient(context, liteClientConfigGlobal)) { String address = "EQDhfNEHdK06MNRjGyx5h0Pao5NgqFTE8ug2SrZ14c6bJnJF"; AddrStd addrStd = AddrStd.parse(address); Future future = callSuspend((c) -> liteClient.getAccountState(addrStd, c)); FullAccountState fullAccountState = future.get(); Account account = fullAccountState.account().getValue(); if (account instanceof AccountInfo) { String balance = ((AccountInfo) account).storage().balance().coins().toString(); System.out.println(balance); // balance } } catch (Exception e) { e.printStackTrace(); }

TON APIs

See more
TON API

REST API to TON Blockchain explorer. Provide access to indexed TON.

TON Center API

Get detailed information about accounts, transactions, and blocks.

TONX API

Simplify development with reliability tools and a seamless developer experience.

DTON

GraphQL API for TON nodes and websocket subscriptions for new data.

Chainstack

Build better with TON nodes

Tonhub API

Another lite-api focused on speed via aggressive cashing in CDN

GetBlock

Build in Web3 with RPC nodes. Block by block.

TON Access

Learn unthrottled anonymous RPC access to TON Blockchain.

It can be useful

Work with wallets

How TON wallets work and how to access them with Javascript.

Build your dApp

A step-by-step guide to building your first web dApp with React.

Awesome TON

A list of tools and materials related to TON.

Other resources

Explorers

How to view information in the blockchain.

TON Grants & Bounties

Get support for core ecosystem projects.

Accelerate your growth

Support for commercial projects on all the stages.

The language of your region is automatically used. Change to English?