Swap on Deneb — link to the DEX with a ready pair
Any project — a game, a bot, a website — can send its users to the Deneb DEX with the pair (and, optionally, the amount) already filled in. It is a plain link: no SDK, no API key, no embedding.
https://dex.denebnav.app/swap?from=BIP&to=USDTBSC&amount=100The user lands on the swap screen, sees a fresh quote from our own node and decides. The link never trades by itself: it only fills in the form. Connecting a wallet and signing happen on the DEX, in the user's own wallet (ADR 0032).
Parameters
| Parameter | Meaning | Example |
|---|---|---|
from | Coin the user sells: a coin id or a ticker | 0, BIP, 1902, HUB |
to | Coin the user buys: a coin id or a ticker | 3494, USDTBSC |
amount | Amount of from to sell, a decimal string with a dot | 100, 12.5, 0.001 |
amt | The same amount in pip (1 coin = 10^18 pip), an integer | 12500000000000000000 |
All parameters are optional. Without any of them the DEX opens its default pair, BIP → USDTBSC.
Coins.
- A value made only of digits is a coin id (
0is BIP). Anything else is a ticker: 3–10 letters and digits with at
least one letter, optionally with the -N suffix of a recreated coin (COIN-2). Tickers are case-insensitive.
- Ids are canonical: a ticker names whichever coin holds it now, an id never changes. Prefer ids in long-lived links.
Find a coin's id on its page in the explorer (https://denebnav.app/minter/coin/<TICKER>).
- A parameter may carry both an id and a ticker (
from=HUB&from=1902). They must name the same coin; if they name
different coins, or one of them is unknown, the parameter is ignored and that side falls back to the default pair.
- Only coins that have a pool can be traded. If
fromandtoname the same coin, the DEX swaps in BIP for one side.
Amount.
amountis in units of thefromcoin; every Minter coin has 18 decimals. At most 18 digits after the dot, no
commas, signs, spaces or exponents (1e3).
amtwins overamountwhen both are valid.- In the regular (non-PRO) view the swap card trades one coin against BIP, so the amount is kept only when BIP is one
side of the pair; otherwise the user types it.
Anything invalid is ignored silently. An unknown coin, a malformed value or an amount that is too long drops that parameter and the page falls back to the default pair; the user never sees an error page. Values longer than 64 characters are dropped as well.
Examples
| Link | Opens |
|---|---|
https://dex.denebnav.app/swap | BIP → USDTBSC |
https://dex.denebnav.app/swap?to=1902 | BIP → HUB |
https://dex.denebnav.app/swap?from=HUB&to=BIP | HUB → BIP (sell HUB) |
https://dex.denebnav.app/swap?from=0&to=3494&amount=250.5 | BIP → USDTBSC, 250.5 BIP |
https://dex.denebnav.app/swap?from=BIP&to=NOSUCHCOIN | BIP → USDTBSC (unknown coin ignored) |
Build the link with URLSearchParams (or your language's equivalent) so values are encoded:
const url = new URL('https://dex.denebnav.app/swap');
url.search = new URLSearchParams({ from: 'BIP', to: 'HUB', amount: '100' }).toString();Button snippet
Copy as is and change the href. Open it in a new tab: do not put the DEX in an <iframe> — the DEX refuses to be framed (clickjacking, and wallet connection does not work inside frames).
<a
href="https://dex.denebnav.app/swap?from=BIP&to=HUB&amount=100"
target="_blank"
rel="noopener noreferrer"
style="display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;
background:#111;color:#fff;font:600 15px/1.2 system-ui,sans-serif;text-decoration:none"
>
Swap on Deneb
</a>Notes
- Use only the public address
https://dex.denebnav.app/swap. The DEX moves internal paths around;/swapstays. - The link opens the web DEX in the browser, on phones as well; it does not open the Deneb app.
- The quote on the page is always recomputed by our node at the moment of the swap. Prices, routes or minimum amounts
in the link are not supported and would be ignored.