TONAPI supports mintless jettons as a part of bigger standard for jettons with custom payload and init data.
When you are requesting jetton balances for an account and want to get mintless jettons transparently, you should use the
custom_payload parameter in the supported_extension field in the request. For example, this link or direct jetton info this link: {
"balance": "1000000000",
"wallet_address": {
"address": "0:405171f583a9e39e22ae9d8394769bc6e37299c59332012a51693b4d606780f3"
},
"jetton": {
"address": "0:fa67d0c7739331fbc3c8f08e018c65f47763616a969100ad760a0b2dc1e36832",
"name": "Mintless Points",
"symbol": "Points",
"decimals": 9,
"image": "https://cache.tonapi.io/imgproxy/DmmPn6dWmsmBgSMVbvjbhIDCChLWI3RmqDJ71whxYBA/rs:fill:200:200:1/g:no/aHR0cHM6Ly9pLmliYi5jby9TS010TlRHL21pbnRsZXNzLnBuZw.webp",
"custom_payload_api_uri": "https://claim-api.tonapi.io/jettons/EQD6Z9DHc5Mx-8PI8I4BjGX0d2NhapaRAK12CgstweNoMint"
},
"extensions": [
"custom_payload"
]
}How to Support Mintless Jettons in Your Dapp
1. Request balances with
?supported_extensions=custom_payload.2. Check if
data["extensions"] contains "custom_payload" for the jetton.3. If it contains and you want to autoclaim on transaction, when your dapp asks the user to send an outgoing jetton transfer via TonConnect, request custom payload and state init via the API:
https://tonapi.io/v2/jettons/0:fa67d0c7739331fbc3c8f08e018c65f47763616a969100ad760a0b2dc1e36832/transfer/UQBDaa8UGaMVKiT8TKXiaJqlyWLmx-MoHYvT_wzHEpdUnIss/payload.4. Add the received data to the message in your TonConnect request.
5. That's it. Now you support mintless jettons!