Migrating your ENSNow domains to the new registrar

Nick Johnson
3 min readMay 5, 2019

--

ENSNow is a DApp that lets users instantly register ENS subdomains with just a single click. Owners of second-level domains can ‘commit’ their domains to the system, which allows anyone to safely create a subdomain of their own, instantly.

With the migration to the new .eth registrar, anyone owning an ENSNow domain will need to migrate their name in order to continue issuing subdomains. Doing this also returns the deposit you paid to register the name, and allows the name’s registration to be extended.

If you bought an ENSNow domain, you don’t need to do anything right now.

Determining where your ENSNow domain is held

There were two copies of the ENSNow registrar. The first, version 0.9, was deployed by enslisting. The second, version 1.0, was deployed by the ENS team. The migration process is slightly different for each, so the first step is to determine where your domain is held.

The easiest way to do this is to look up your domain in our manager. If the controller address is 0x0b07463b30b302a98407d3E3dF85EBC073B0DBd1, your name is held by the ENS team contract. If the controller address is 0xFA6512358d241B636EDF5F8cCaaF86676DEC21A7, your name is held by the enslisting contract.

Migrating from the enslisting contract

To migrate your name from the ENSListing contract to the new one, you need to follow these steps:

  1. Go to our manager DApp, enter the name, and follow the directions to migrate your name to the new registrar.
  2. Follow the directions below in the section “Listing a new domain with ENSNow”.

Migrating from the ENS Team contract

To migrate your name from the ENS Team version of the contract to the new one, you need to follow these steps:

  1. Using a contract interface such as Etherscan’s, load up the old subdomain registrar contract. If you are using Etherscan, you will need to click “Connect with Metamask” and authorise the subsequent dialog box from Metamask.
  2. Find the ‘migrate’ function.
  3. Enter your ENS domain name, without the .eth (eg, ‘gimmethe’, not ‘gimmethe.eth’), in the text box, and submit the transaction.
  4. Submit a pull request to domains.json, adding your domain back in to the DApp.

Listing a new domain with ENSNow

To list a new domain with ENSNow, you will need to use a contract interface — there’s not currently a tidy UI for this. We recommend Etherscan, MyEtherWallet, or MyCrypto.

Warning: By doing this, you are permanently giving up use of your domain! You will be able to collect registration fees, change prices, and transfer control to another user — but you will never be able to use your domain for anything else!

  1. Load up the .eth registrar contract. If you are using Etherscan, you will need to click “Connect with Metamask” and authorise the subsequent dialog box from Metamask.
  2. Find the ‘approve’ function.
  3. In the address field, enter ‘0xc32659651d137a18b79925449722855aa327231d’
  4. In the tokenId field, enter the labelhash of your name. You can look this up by searching for your name on etherscan (look for ‘Label hash [foo]:’).
  5. Submit the transaction.
  6. Load up the new subdomain registrar contract.
  7. Find the ‘configureDomain’ function.
  8. In the name field, enter the name you want to list, without ‘.eth’ (Eg, ‘gimmethe’, not ‘gimmethe.eth’).
  9. In the price field, enter the price to charge for a new domain, in wei. 1 ether is 1,000,000,000,000,000,000 wei, so for instance to charge 0.01 ether per domain, you should enter 10000000000000000.
  10. In the referralFeePPM field, enter the amount you want to give to any website that finds a new user for you. For instance, to keep the entire amount yourself, enter 0; to give it all to the site, enter 1000000.
  11. Submit the transaction.
  12. Submit a pull request to domains.json, adding your domain to the DApp.

--

--