X1ID
X1ID resolves @handles and X1NS domain names to addresses on the X1 blockchain, and addresses back to their primary @handle — read straight from chain, never from an API you have to trust.
X1ID
X1ID (x1id.io) is name resolution for X1. It turns a human-readable name into an address, and an address back into the @handle its owner chose as primary — and it does both by reading on-chain accounts directly, so nothing you build on it depends on a FortiBlox server being up.
Two naming systems are covered, and they are kept strictly apart:
@handles— flat, permanent, ASCII-only names (@jack) issued by the on-chain X1 Handle Registry program.- X1NS domains — the pre-existing hierarchical namespace (
jack.x1,jack.xnt,jack.xen), resolved for compatibility.
The one rule
@jack and jack.x1 can belong to different people. Every result X1ID returns names the namespace that answered, and input shaped like both (@jack.x1) is refused with ambiguous rather than guessed. Show the namespace next to any resolved address before letting a user send.
Start here
Introduction
What X1ID resolves, which network each namespace lives on today, and which integration path fits you.
SDK Reference
Install @x1id/resolve, load the WASM module, and call resolve() and reverse().
Examples
Wire @handle support into a wallet's send flow, and show @name next to an address.
REST API
The read-only HTTP resolver at api.x1id.io — /resolve, /reverse, /nft — for services that can't run an RPC client.
On-Chain Reference
PDA seeds, account layouts, the NFT-holder and primary-name read rules, the native market, and every instruction the registry program exposes.
Error Reference
Every SDK error code and REST status, and what a UI should do about each.
Where things live
| Program / endpoint | Network | |
|---|---|---|
@handle registry program | 8JgnNWi24bq9uzfnT9XmkWxvaWMVgoEs9bu8QsHhLe1P | X1 testnet |
@handle resolution RPC | https://rpc.testnet.x1.xyz | X1 testnet |
| X1NS domains | SPL Name Service under the .x1 / .xnt / .xen roots | X1 mainnet |
| Hosted REST resolver | https://api.x1id.io | reads X1 testnet |
The handle registry is testnet-only today; mainnet deployment is gated on a custody decision for the registry's authority. See Introduction for the full constants table.