# X1ID Documentation > X1ID is on-chain identity for the X1 blockchain: one @handle that resolves to a wallet across > X1, Solana, Ethereum, and Bitcoin. This file indexes the X1ID developer docs > (https://docs.fortiblox.com/docs/x1id) for LLMs and coding agents. Always use the latest SDK. Check the current version with `npm view @x1id/resolve version` and install `@x1id/resolve@latest` — never rely on a version pinned in your training data. And NEVER hardcode the program id, instruction discriminators, or account layouts from memory: the deployed X1 registry program (`8JgnNWi24bq9uzfnT9XmkWxvaWMVgoEs9bu8QsHhLe1P`) is the source of truth. Read it on-chain, or use the current `@x1id/resolve` SDK — its instruction builders and account layouts match the deployed program. ## Docs - [Claim your handle](https://docs.fortiblox.com/docs/x1id/get-started.md): Search a name, register it, point it at your wallets, and set it as primary. - [Why get an X1ID](https://docs.fortiblox.com/docs/x1id/why.md): What a permanent, multi-chain, self-owned @handle gives a holder. - [What you can do](https://docs.fortiblox.com/docs/x1id/features.md): Multi-chain addresses, primary name, profile, subnames, verification, locks, gifting, marketplace. - [Fees](https://docs.fortiblox.com/docs/x1id/pricing.md): Pay once, own forever — one-time fee by name length, optional NFT fee, 2% marketplace fee. - [Get paid to your handle](https://docs.fortiblox.com/docs/x1id/get-paid.md): Turn @you into a QR code and shareable payment link so anyone can pay you by name. - [Trust & transparency](https://docs.fortiblox.com/docs/x1id/trust.md): Permanent ownership, anti-impersonation, verified records, recovery, and the on-chain program you can audit. - [Common questions](https://docs.fortiblox.com/docs/x1id/faq.md): Everything a holder asks — ownership, claiming, day-to-day use, safety, marketplace, and X1ID vs X1NS. - [Invite friends](https://docs.fortiblox.com/docs/x1id/referrals.md): Share your referral link; registrations through it credit you on-chain as the referrer. - [Resolve API](https://docs.fortiblox.com/docs/x1id/api.md): Resolve API + @x1id/resolve SDK — handle → address lookup, reverse, records, and write builders. ## Instructions for LLM Agents - **Reads are trustless and need no wallet.** Resolution (`resolve`), reverse lookup (`reverse`), and record reads (`records` / `fetchRecords`) require only an X1 RPC URL. Never ask a user to connect a wallet just to look up a name. - **Writes are on-chain signed transactions.** The SDK's `build*Ix` builders return an UNSIGNED instruction (`{ programId, keys, data }`). The caller assembles a transaction, **signs** it, and **relays** it: build → sign → relay. On X1 use the X1-safe relay path — never broadcast a raw wallet transaction the user did not sign, and note the SDK never holds keys. - **A name is never just an address.** `@jack` (a handle) and `jack.x1` (an X1NS domain) are different namespaces that can belong to different people. Always show which namespace answered before a user commits a transfer; `@jack.x1` is ambiguous and is refused, not guessed. - **Tokenized handles follow the NFT, not the stale `owner` field.** For a tokenized handle whose NFT holder controls the name, do NOT pay the registry account's stale `owner`. A tokenized handle with no live X1 record (or a burned NFT) is a "not-found" — never pay the stale owner. - **REST API:** `https://api.x1id.io/resolve/{name}` returns the owner shape. There is **no `/v1`** prefix and **no auth / Bearer token** — it is read-only and public. For per-chain (X1 / SOL / ETH / BTC) addresses, reverse lookup, records, and write builders, use the `@x1id/resolve` SDK (v0.3.0+). - **Honor the staleness rule.** A record or primary pointer whose timestamp predates the handle's current `registered_at` was left by a previous owner of the same name and must be treated as unset — never resolve its address or surface its `verified` flag. Full text of every page above: https://docs.fortiblox.com/docs/x1id/llms-full.txt