You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/api/price.mdx
+7-9Lines changed: 7 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,14 +7,9 @@ Each swap operation, whether between a native asset (Gram) and Jetton or between
7
7
8
8
## Off-chain API
9
9
10
-
The most common use case for the price API is to fetch Jetton info on the web2 backend and use aggregated data inside the service. There are severalhistorical Jetton price providers in TON:
10
+
The most common use case for the price API is to fetch Jetton info on the web2 backend and use aggregated data inside the service. There are [several](https://www.coingecko.com/en/api/ton)[historical](https://dyor.io/tonapi) Jetton price providers in TON.
You can find detailed information about API usage and technical details in the provider docs.
16
-
17
-
There is no established solution for real-time jetton swap market data; however, one can explore [CoinGecko websocket API](https://docs.coingecko.com/websocket).
12
+
There is no established solution for real-time jetton swap market data; however, one can explore [this websocket API](https://docs.coingecko.com/websocket).
18
13
19
14
## On-chain API
20
15
@@ -24,16 +19,19 @@ Currently, it is not possible to retrieve **historical** jetton prices on-chain
24
19
Since the TON [execution model is asynchronous](/from-ethereum#execution-model), the jetton price might change between the moment of the response from the price provider and the moment the contract processes the response. Consider this factor in smart contract logic.
25
20
</Callout>
26
21
27
-
For example, on the [DeDust](https://dedust.io) DEX, it is possible to retrieve pool information on-chain using an internal message with the following [TL-B](/foundations/tlb/overview) schema:
22
+
For example, on a [popular DEX](https://dedust.io), it is possible to retrieve pool information on-chain using an internal message with the following [TL-B](/foundations/tlb/overview) schema:
Copy file name to clipboardExpand all lines: content/applications/appkit/howto/providers.mdx
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,21 +20,21 @@ A provider is not a wallet and not a connector. The wallet still signs every tra
20
20
21
21
## Swaps
22
22
23
-
A swap provider integrates a DEX or aggregator. It returns a **quote** for a route (input asset, output asset, amount, fees, and execution assumptions), then builds a `TransactionRequest` when the user accepts the quote. AppKit does not price markets itself; `SwapManager` coordinates the registered providers. Bundled options include Omniston and DeDust. See [Perform swaps](/applications/appkit/howto/swaps) for the full quote-then-build flow.
23
+
A swap provider integrates a DEX or aggregator. It returns a **quote** for a route (input asset, output asset, amount, fees, and execution assumptions), then builds a `TransactionRequest` when the user accepts the quote. AppKit does not price markets itself; `SwapManager` coordinates the registered providers. Bundled options include popular DEX platforms. See [Perform swaps](/applications/appkit/howto/swaps) for the full quote-then-build flow.
24
24
25
25
## Staking
26
26
27
27
A staking provider quotes a stake or unstake intent for a specific pool or protocol, then builds the matching `TransactionRequest`.
28
28
29
29
Liquid-staking positions may appear in the wallet as derivative balances, such as tsTON. AppKit exposes pool metadata and APY as provider-supplied **display data**, not a guarantee of future yield or redemption timing.
30
30
31
-
Unstake mechanics — instant, delayed, or round-end — are provider-specific. The bundled staking provider is Tonstakers. See [Stake and unstake](/applications/appkit/howto/staking) for the full flow.
31
+
Unstake mechanics — instant, delayed, or round-end — are provider-specific. See [Stake and unstake](/applications/appkit/howto/staking) for the full flow.
32
32
33
33
## How they are registered
34
34
35
35
Provider setup uses three registration paths. **API clients** are bound to a network through the `networks` field of `AppKitConfig`. **Streaming providers** are also network-specific and are registered directly on `appKit.streamingManager`. **Swap** and **staking** providers are network-aware DeFi providers: pass them in `providers` at construction or register them later with `registerProvider`. Each DeFi provider declares its `type` so AppKit can route it to the correct manager.
36
36
37
-
Omniston requires its own SDK package — install it before registering the provider:
37
+
Some providers require their own SDK package — install it before registering the provider:
When a network entry does not provide a custom API client, AppKit creates a TON Center client for that network. TON Center streaming provider is available through WalletKit and can be registered on `appKit.streamingManager`. Omniston and DeDust are available as swap providers, and Tonstakers is available as a staking provider. Custom DeFi backends can use the same `registerProvider` path by implementing the swap or staking interface.
63
+
When a network entry does not provide a custom API client, AppKit creates a TON Center client for that network. TON Center streaming provider is available through WalletKit and can be registered on `appKit.streamingManager`. Custom DeFi backends can use the same `registerProvider` path by implementing the swap or staking interface.
64
64
65
65
`registerProvider` returns `void`. To replace a provider, call `registerProvider` again with the same `providerId` — the registry entry is overwritten. If the previous provider owns resources you need to clean up, hold the reference and dispose of it yourself before re-registering.
Copy file name to clipboardExpand all lines: content/applications/appkit/howto/staking.mdx
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,11 +9,11 @@ Quote a stake or unstake, build the transaction, and send it through the connect
9
9
10
10
The `StakingManager` routes each quote call and each build call to a single registered staking provider — by default the first one you registered, or the one you pass as `providerId`. `setDefaultProvider` on the manager overrides the default; an unknown `providerId` throws. A quote describes the intent (`direction: 'stake' | 'unstake'`, `amount`, optional `unstakeMode`), and `useBuildStakeTransaction` turns an accepted quote into a `TransactionRequest`.
11
11
12
-
The protocol shape — derivative jetton, unstake modes, settlement timing, pool model — is provider-specific. Tonstakers, the bundled provider, issues `tsTON` and supports `INSTANT`, `WHEN_AVAILABLE`, and `ROUND_END` unstake modes. Read the user's staked-token balance with `useStakedBalance`, or query the jetton balance directly. `apy` and `instantUnstakeAvailable` from `useStakingProviderInfo` are provider-supplied display data, not guarantees of future yield or withdrawal timing.
12
+
The protocol shape — derivative jetton, unstake modes, settlement timing, pool model — is provider-specific. The bundled provider issues `tsTON` and supports `INSTANT`, `WHEN_AVAILABLE`, and `ROUND_END` unstake modes. Read the user's staked-token balance with `useStakedBalance`, or query the jetton balance directly. `apy` and `instantUnstakeAvailable` from `useStakingProviderInfo` are provider-supplied display data, not guarantees of future yield or withdrawal timing.
13
13
14
14
## Before you begin
15
15
16
-
You need a connected wallet and a staking provider registered on the AppKit instance. Tonstakers ships bundled — see [Use providers → How they are registered](/applications/appkit/howto/providers#how-they-are-registered).
16
+
You need a connected wallet and a staking provider registered on the AppKit instance. Some popular staking providers are bundled — see [Use providers → How they are registered](/applications/appkit/howto/providers#how-they-are-registered).
Copy file name to clipboardExpand all lines: content/applications/appkit/howto/swaps.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,7 +13,7 @@ The quote is provider-supplied data and can expire. Refresh it close to the mome
13
13
14
14
## Before you begin
15
15
16
-
You need a connected wallet and at least one swap provider registered on the AppKit instance. Omniston and DeDust ship bundled — see [Use providers → How they are registered](/applications/appkit/howto/providers#how-they-are-registered).
16
+
You need a connected wallet and at least one swap provider registered on the AppKit instance. Some popular swap providers are bundled — see [Use providers → How they are registered](/applications/appkit/howto/providers#how-they-are-registered).
Copy file name to clipboardExpand all lines: content/applications/appkit/howto/use-ui-widgets.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -180,7 +180,7 @@ The required prop is `tokens`. `defaultFromSymbol`, `defaultToSymbol`, `defaultS
180
180
181
181
## Staking widget
182
182
183
-
`<StakingWidget />` is the complete staking UI: stake/unstake tabs, amount input, balance readout, current APY, exchange rate, and provider. The widget reads the registered staking provider (Tonstakers ships bundled — see [Use providers → How they are registered](/applications/appkit/howto/providers#how-they-are-registered)) and handles quote, build, and the wallet call internally.
183
+
`<StakingWidget />` is the complete staking UI: stake/unstake tabs, amount input, balance readout, current APY, exchange rate, and provider. The widget reads the [registered staking provider](/applications/appkit/howto/providers#how-they-are-registered) and handles quote, build, and the wallet call internally.
0 commit comments