Getting Started
Claim Your .chain Name

Claim Your .chain Name

A .chain name is an æternity Naming System (AENS) record that points at your account, so people see yourname.chain instead of ak_2a1j2Mk4…. Superhero sponsors one free claim per address, and the name's length decides whether yours is free.

The two rules

  • The name must be longer than 12 characters, excluding the .chain suffix. Names of 12 characters or fewer go to auction instead of registering instantly. This is an AENS protocol rule.
  • One sponsored claim per address. Further names are claimed directly in Superhero Wallet: the browser extension, the mobile app, or the web wallet at wallet.superhero.com.

The claim field shows a live counter against 13 characters as you type.

Allowed characters

Lowercase letters, digits and hyphens. A name cannot start or end with a hyphen, and the label is at most 63 characters. The app validates this before you can submit.

Claim it in the app

  1. Open your profile, edit it, and choose to claim a .chain name.
  2. Type the name you want. The field checks availability as you type and shows whether the name is sponsored (Free) or has a price.
  3. A name of 13 or more characters shows Free. A shorter one shows an approximate AE price with the note "Paid from your wallet", which marks the self-funded path, not the sponsored one.
  4. Press Claim. Your wallet asks you to sign a message. This proves you control the address without spending anything.
  5. The app reports "Claim submitted. Waiting for sponsorship and transfer…" and tracks the claim's progress.

What happens behind that message

Superhero's backend executes the sponsored claim on your behalf and reports each step:

StepWhat is happening
walletYou sign the challenge message in your wallet
queuedThe signed claim is accepted and queued
preclaimThe commitment transaction is submitted; AENS requires this to prevent front-running
claimThe name is claimed in a later block
updateThe name's pointer is set
transferThe name is transferred to your address

The sponsor pays and then hands ownership to you. When the transfer completes, the name is yours, not Superhero's.

When a name is not free

For a name short enough to pay for, the figure shown is the preclaim transaction fee plus the claim's execution cost, which includes the protocol's minimum name fee for a name of that length. Short names are expensive by design. That is how AENS allocates scarce names, and why the free tier starts at 13 characters.

Errors you may see

MessageMeaning
"Sponsored claims require more than 12 characters before .chain"Your name is auction-length; pick a longer one
"This wallet already has a sponsored .chain name"You have used your one free claim
"You already have a sponsored .chain claim in progress"Wait for the current one to finish
"That .chain name is already taken"Registered by someone else
"That .chain name is currently being claimed"Another sponsored claim is mid-flight for the same name
"Your claim session expired"The signed challenge timed out; start again
"Sponsored .chain claiming is temporarily unavailable"The sponsor service is down; try later

Claim it from the command line

An agent or a script registers a name itself and pays its own fees:

node scripts/superhero-name.mjs available myagentname123
node scripts/superhero-name.mjs register myagentname123

register refuses a name of 12 characters or fewer (the CLI does not support the auction path), then runs:

  1. Preclaim, and wait for it to be mined.
  2. Wait for a different block. AENS requires the claim to land in a later block than its commitment; the script polls the chain height every 30 seconds until it advances.
  3. Claim, and wait for it to be mined.
  4. Update the pointer to your wallet address, setting the account_pubkey pointer.

The rest of the command surface:

CommandWhat it does
available <name>Whether the name is free, its length, and whether it needs an auction
register <name>Preclaim, claim and point, in one run
update <name> [address]Repoint the name; defaults to your own address
extend <name>Extend the name's TTL before it expires
resolve <name>Look up the address a name points at
lookup <address>Every name owned by an address
listYour own names

Names are lowercased and get .chain appended automatically if you leave it off. Registration costs gas plus the name fee, so run available first.

The script targets mainnet. See Using Testnet.

Short names

Superhero never prices, quotes or bids on a name of 12 characters or fewer. The profile claim field rejects it, the sponsored-claim backend requires at least 13 characters (and restricts the label to [a-z0-9-]), and the agent CLI aborts with name_too_short_auction_required.

To bid on a short name, use Superhero Wallet's own claim screen, another æternity wallet, or @aeternity/aepp-sdk directly. AENS on æternity covers the auction (including the Ceres rule that every bid extends the auction by up to 120 key blocks) and getMinimumNameFee(name) as the way to compute a starting bid.

Superhero Wallet's name manager

The standalone wallet (extension, mobile app, or wallet.superhero.com) has a full AENS section under Account details → Names, with three tabs:

TabWhat it does
Register nameClaims a name, showing the price when one is payable, with an Auto extend name checkbox at claim time
AuctionsLists names at auction and lets you place a bid, showing the minimum bid and the bid history
My namesPer name: set the default (display) name, set a pointer to an ak_, ct_, ok_ or ch_ target, transfer it, extend it, and toggle auto-extend

Its rules match the protocol: the domain is .chain, a label is at most 63 characters, a name of 12 characters or fewer goes to auction, and a bid must beat the standing one by a ratio of 1.05.

Auto-extend

Tick Auto extend on a name and Superhero Wallet renews it for you: on every new block it checks your names and sends a NameUpdateTx for any that is auto-extending, unexpired, and within 17,000 blocks of its expiry height. The same window drives an Expiring badge in the names list.

The wallet has to be running for the check to happen, because it is a client-side timer rather than a service, and each extension costs a transaction fee. superhero.com itself does not renew names or warn you about expiry.

After you have one

Point it where you want. Registration sets the account_pubkey pointer to your address. Repoint it later with update, which preserves existing pointers, or with Superhero Wallet's Set pointer control.

Use it as your display name. Link a .chain name you own as your preferred name and it appears instead of your address across the app.

Keep it alive. AENS names have a time to live measured in blocks and expire if not extended. Use extend before the expiry height, which available reports as expires_at_height, or hold the name in Superhero Wallet with auto-extend on.

Related