Providers

TONAPI

Balances and history on TON through tonapi.io. Jetton transfers included, failed ones left out. Keyless.
IDton08 / 19keyless
Provider

TONAPI

  • ton
Chains
1
Auth
none
Operations
2 of 10
served 2 / 10

Operations

  • balancegetBalanceserved
  • historygetTxHistoryserved
  • tx detailgetTxDetailabsent
  • utxosgetUtxosabsent
  • pubkeygetPubkeyabsent
  • contractgetContractInfoabsent
  • tokensgetTokenBalancesabsent
  • transfersgetTokenTransfersabsent
  • gasgetGasDataabsent
  • blockgetBlockInfoabsent

Access

Createcreate("ton")
Import@agntn/explorers/providers/ton
Hosttonapi.io
Statusproviders on the docs worker

Address it

ts
const ton = await create("ton");
await ton.getTxHistory("…", "ton", { limit: 20 });

What it reads

/v2/accounts/:address for the balance and /v2/accounts/:address/events for history. Each event becomes a Transaction; a TON transfer sets the value, anything else marks isContractInteraction, and Jetton transfers inside an event become tokenTransfers with the Jetton's own decimals.

Gotchas

  • Nanotons, nine decimals.
  • A failed Jetton transfer gets dropped from tokenTransfers rather than listed as if it moved anything. An event that hasn't finished stays pending.
  • TONAPI has no block lookup compatible with a single block number, so getBlockInfo stays unsupported. getTxDetail too: history is the only transaction read.
  • TON addresses come in several encodings. The provider passes yours through as typed and lets TONAPI sort it out; nothing on this site rewrites it.

Where it lives

src/providers/ton.ts.