Resolve identities in an app built with XMTP
When you build with XMTP, there’s no cold start for your app and your users. As soon as your app plugs into the XMTP network, it can reach today’s most popular and meaningful identities. XMTP’s interoperability and composability help ensure that the network can continue to grow and bring messaging to every identity—via your app.
In this context, identity refers to:
- Wallet addresses, such as raw 0x addresses like
- Human-readable domain names associated with wallet addresses. These domain names are provided by name services, such as Ethereum Name Service (ENS) and Unstoppable Domains (UNS).
As a UX best practice, build your app to enable a user to enter a domain name in the To field and have the identity resolve to its associated raw wallet address. For example, a user should be able to enter
gm.xmtp.eth in your To field and have your app forward-resolve and display the identity's associated wallet address
Your app should also be able to accept a raw wallet address and reverse-resolve and display the identity's associated domain name, if available.
When displaying a name, also look for and display its associated avatar. For example, when displaying a Lens name, look for and display a Lens profile photo. For raw 0x addresses, display blockies as avatars.
Third-party identity resolution tools
Explore these third-party identity resolution tools.
Tools listed on this page are not official endorsements and are provided for informational purposes only.
Is your app using a great tool to resolve identities? Open an issue to share information about it.
Airstack currently supports identity resolution with both the new Lens V2 handle
namespace/@handlename format and the legacy V1
.lens profile name
Everyname provides tools to resolve ENS, Farcaster, Lens, Unstoppable Domains, and other identities.
Unstoppable Domains provides tools to resolve Unstoppable Domains identities.
SimpleHash provides tools to resolve ENS and Base Name Service identities.