Since 2022 Telegram has sold short and memorable usernames on Fragment as
collectible usernames. Each one is an NFT on the TON blockchain. That makes one question easy
to answer — which wallet owns @name — and leaves another, which person is behind it, mostly
unanswered. Here is what you can find out and how.
Two kinds of usernames
- Ordinary usernames are set for free in Telegram settings. They are not on any blockchain, and nobody outside Telegram can see who reserved one except by opening
t.me/<name>. - Collectible usernames were auctioned on Fragment. The name is an NFT in the "Telegram Usernames" collection, owned by a TON wallet. The owner can attach it to a Telegram account or channel, transfer it, sell it or auction it.
Everything below is about collectible usernames. If a lookup says "not found", the name is most
likely an ordinary username or not taken at all.
Step 1: look up the NFT
Pick one:
- apiton.org — open
apiton.org/username/<name>(lowercase, without@). The page shows the owner wallet, the status and the price if it is listed. Browse the usernames hub, for example 4-character usernames. - Telegram — send
@nameto @apitonBot. The card shows the same data read live from the chain, with buttons for the owner's transactions and alerts. - API — one request, no key needed for a quick check:
curl -X POST https://app.apiton.org/v2.Nft/Username \ -H 'Content-Type: application/json' \ -d '{"username":"beijing"}' The response contains address (the NFT item), owner_address, status and, for listed names,
a sale object with the price or an auction object with the auction state.
Step 2: read the owner field correctly
-
owner_addressis a wallet, shown in the non-bounceable form (UQ…). See Reading a TON address for why the same wallet can be written three ways. - When a username is for sale through an on-chain sale contract, the NFT technically sits in that contract. apiton reports the seller as the owner, not the contract, so you see the real holder.
- During a Fragment auction the NFT stays in its item contract; the current highest bidder is a separate field (
last_bid.address) and becomes the owner only when the auction ends.
Step 3: what the chain does not tell you
The blockchain links the username to a wallet. It does not record which Telegram account the
owner assigned the name to. To see the account or channel currently using the name, open
https://t.me/<name>. The account using a name and the wallet owning it can belong to different
people — for example when a company holds names in a treasury wallet.
A wallet's history can still tell you a lot: when it received the name, what else it holds and
whether it trades actively. In @apitonBot, tap the owner address on a
username card to see its transactions and NFTs.
Step 4: statuses you will see
| Status | Meaning |
|---|---|
| Not listed | the NFT exists and is not offered for sale |
| For sale | fixed price: on-chain sale contract, or an off-chain Fragment listing ("per fragment.com") |
| On auction | Fragment auction: current bid, next minimum bid, end time |
| Not found | no collectible username with this name |
Lists by status: usernames for sale and
username auctions.
Get notified instead of checking again
If you are waiting for a name to be listed or its price to drop, open it in
@apitonBot and tap Watch. The bot tells you when it is listed, sold,
re-priced or when an auction gets a new bid — see
Getting alerts with @apitonBot.
![Why Object.keys(user) Returns string[], Not (keyof User)[]: TypeScript Means It](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2q4w48b9bzs43tynyhsf.png)
