Skip to main content
Cove deep links encode the full action inside the Telegram /start payload. They are self-contained, so your app can generate them without storing shared state or calling Cove before the user clicks.
Telegram limits the /start parameter to 64 characters. Cove deep links use fixed-width Base62 segments so payloads stay compact enough for Telegram links.

Quick reference

For token links, encode the token address into Base62 first: 27 chars for EVM tokens, 43 chars for Solana tokens. Use the chain code table below to choose e, b, n, m, s, and other supported networks.

Group buy

Fixed-size buy that can execute immediately for onboarded users.
g_{amount}{chainCode}{base62Token}
https://t.me/cove_trading_bot?start=g_10s<43-char-base62-token>

Group sell

Sells a percentage of the clicker’s own token position.
gs_{percent}{chainCode}{base62Token}
https://t.me/cove_trading_bot?start=gs_50e<27-char-base62-token>

Referral

Share a token link with referral attribution.
ref_{ref}-{tokenAddress}
https://t.me/cove_trading_bot?start=ref_alice-0xf30bf00edd0c22db54c9274b90d2a4c21fc09b07
Need attribution? Append both optional IDs as a 14-character tail:
{base62AffiliateId}{base62GroupId}
Use 0000000 when one of the two values is intentionally empty.
https://t.me/cove_trading_bot?start=g_0d5b<27-char-base62-token><7-char-affiliate>0000000

Group Buy

g_ links execute a buy for a fixed USD amount.

Market Buy Panel

b_ links open the token buy panel so the user can choose the amount.

Group Sell

gs_ links sell a percentage of the clicker’s own token position.

Referral

ref_ links share a token with referral attribution.
Base URL:
https://t.me/cove_trading_bot?start={payload}

Shared encoding

The g_, b_, and gs_ token-action links use the same chain codes, address encoding, and optional affiliate/group tail.

Chain codes

CodeChainChain ID
eEthereum1
bBase8453
nBNB Chain56
mMegaETH4326
sSolana1399811149
tTempo4217
oMonad143
yStory1514
hHyperEVM999
pPlasma9745

Token address width

Chain typeRaw address bytesBase62 width
EVM20 bytes27 chars
Solana32 bytes43 chars
For EVM addresses, strip 0x and hex-decode the address bytes before Base62 encoding. For Solana addresses, base58-decode the address into 32 bytes before Base62 encoding.

Optional affiliate and group IDs

Token links can optionally include an affiliate Telegram user ID and a source Telegram group ID.
SegmentWidthDescription
base62AffiliateId7 charsAffiliate Telegram user ID
base62GroupId7 charsSource Telegram group ID
The affiliate and group segments are either both present (14 chars total) or both absent. Use 0000000 as the sentinel when only one value is needed. Encode Telegram IDs by converting the numeric ID to Base62 and left-padding it to 7 characters. For Telegram group IDs, remove the -100 prefix before encoding. For example, -1002036764921 becomes 2036764921.
Use g_ links when you want a click to buy a token for a fixed USD amount.
g_{amount}{chainCode}{base62Token}[{base62AffiliateId}{base62GroupId}]
FieldWidthDescription
g_2 charsFixed prefix
amount1-4 charsUSD amount. Use d instead of a decimal point, e.g. 10, 0d5, 1d5, 9999
chainCode1 charChain identifier
base62Token27 or 43 charsBase62-encoded token address
base62AffiliateId7 charsOptional affiliate Telegram user ID
base62GroupId7 charsOptional source Telegram group ID
Behavior:
  • Onboarded users execute the buy immediately.
  • New users enter onboarding first. If an affiliate is present, Cove can attach it during onboarding, but the buy does not auto-execute.
  • If affiliate or group metadata is present, Cove records it for attribution and reporting.
Chain typeWorst-case length
Solanag_ + 9999 + s + 43-char token + 14-char tail = 64 chars
EVMg_ + 9999 + b + 27-char token + 14-char tail = 48 chars
Examples:
https://t.me/cove_trading_bot?start=g_10s<43-char-base62-token>
https://t.me/cove_trading_bot?start=g_0d5b<27-char-base62-token><7-char-affiliate>0000000

Use b_ links when you want to open the Cove buy panel for a token and let the user choose the amount.
b_{chainCode}{base62Token}[{base62AffiliateId}{base62GroupId}]
FieldWidthDescription
b_2 charsFixed prefix
chainCode1 charChain identifier
base62Token27 or 43 charsBase62-encoded token address
base62AffiliateId7 charsOptional affiliate Telegram user ID
base62GroupId7 charsOptional source Telegram group ID
Behavior:
  • Onboarded users open the market panel in buy mode.
  • The user selects the amount and confirms from inside Cove.
  • New users enter onboarding first. If an affiliate is present, Cove can attach it during onboarding, then the user starts from the main menu.
Chain typeWorst-case length
Solanab_ + s + 43-char token + 14-char tail = 60 chars
EVMb_ + b + 27-char token + 14-char tail = 44 chars
Examples:
https://t.me/cove_trading_bot?start=b_s<43-char-base62-token><7-char-affiliate><7-char-group>
https://t.me/cove_trading_bot?start=b_b<27-char-base62-token>

Use gs_ links when you want a click to sell a percentage of the user’s own position in a token. The link does not transfer or sell a shared group wallet position.
gs_{percent}{chainCode}{base62Token}[{base62AffiliateId}{base62GroupId}]
FieldWidthDescription
gs_3 charsFixed prefix
percent1-3 charsInteger from 1 to 100, representing the share of the position to sell
chainCode1 charChain identifier
base62Token27 or 43 charsBase62-encoded token address
base62AffiliateId7 charsOptional affiliate Telegram user ID
base62GroupId7 charsOptional source Telegram group ID
Behavior:
  • Cove sells the selected percentage of the clicker’s own position from a real trading account.
  • If the user holds the token in one account, Cove can select that account automatically.
  • If the user holds the token in multiple accounts, Cove shows a wallet picker.
  • If the user does not hold the token, Cove shows that there is nothing to sell.
  • New users can be onboarded through the link, but no sell is executed because there is no existing position.
Group sell links are opt-in for users. The first time a user clicks one while group sells are disabled, Cove asks them to enable group sell links. After enabling, future group sell links can execute directly.
Worst-case Solana payload:
gs_ + 100 + s + <43-char-base62-token> + <7-char-affiliate> + <7-char-group> = 64 chars
Example:
https://t.me/cove_trading_bot?start=gs_50e<27-char-base62-token>

Use ref_ links when you want to share a token link with referral attribution. The ref value goes before the hyphen, and the token address goes after it. Full link format:
https://t.me/cove_trading_bot?start=ref_{ref}-{tokenAddress}
Payload format:
ref_{ref}-{tokenAddress}
FieldDescription
refYour referral name or code, without @
tokenAddressRaw token address or mint address
The token address format is the same for EVM and Solana links: replace it with the token address you want the user to open. Example:
https://t.me/cove_trading_bot?start=ref_alice-0xf30bf00edd0c22db54c9274b90d2a4c21fc09b07
In this example, replace alice with your own ref and replace the token address with the token you want to share.

Base62 helpers

Cove uses this alphabet:
0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
All fixed-width Base62 strings are left-padded with 0.
const ALPHABET = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";

function bytesToBase62(bytes, width) {
  let n = 0n;

  for (const byte of bytes) {
    n = (n << 8n) | BigInt(byte);
  }

  if (n === 0n) {
    return "0".repeat(width);
  }

  let result = "";

  while (n > 0n) {
    result = ALPHABET[Number(n % 62n)] + result;
    n = n / 62n;
  }

  return result.padStart(width, "0");
}

function base62ToBytes(str, byteLength) {
  let n = 0n;

  for (const ch of str) {
    n = n * 62n + BigInt(ALPHABET.indexOf(ch));
  }

  const bytes = new Uint8Array(byteLength);

  for (let i = byteLength - 1; i >= 0; i--) {
    bytes[i] = Number(n & 0xffn);
    n = n >> 8n;
  }

  return bytes;
}
Validate payload length before publishing a link. Invalid optional-tail lengths or payloads above Telegram’s limit will not resolve into a Cove action.