Skip to main content

Migration guide

This migration enables resolution for .sns domains. At slot 452,825,395, resolution for .sol domains will be temporarily paused in preparation for the upcoming transition to the Solana Record Service (SRS). Support for resolving SRS-backed .sol domains will be added in a future SDK update.

Migrating requires two changes:

  • Upgrade the SDK used by your application.
  • Replace .sol with .sns wherever your frontend displays existing SNS domains.

Upgrade your SDK

Choose your SDK guide for installation, API changes, and migration checks.

IntegrationGuide
JavaScript SDK v3 to v4JavaScript SDK v4
JS Kit SDK v0.10 to v1JS Kit SDK v1
Rust SDK v1 to v2Rust SDK v2

Update displayed domains

Search the frontend for hard-coded .sol suffixes, including formatters, components, and cached display values.

Does your app display primary domains or domains owned by a wallet?

Check the frontend code that formats domain names returned by primary-domain or wallet-domain lookups, such as getPrimaryDomain and getSnsDomainsForOwner or their equivalents.

Update each displayed value based on its current format:

  • Append .sns to a TLD-less name.
  • Replace an existing .sol display suffix with .sns.
  • Leave a name that already ends in .sns unchanged.

For example:

Before
const displayedDomain = `${domain}.sol`;
After
const displayedDomain = `${domain}.sns`;

Does your app display images for tokenized domains?

Download and bundle the image below as the artwork for tokenized domains. Do not use the metadata image, as it may still show the .sol suffix.

SNS NFT image