Edit this page

Getting Started with Login

Login with Unstoppable is a versatile feature with several integration pathways available for developers. This guide will step you through your first login integration with one of several supported libraries.


Login with Unstoppable can be integrated with any EVM-compatible dApp. However, Login will only authenticate domains that have been minted on the Polygon or Ethereum Mainnets. Domains minted on testnets (e.g. Mumbai or Goerli) are not supported.

Step 1: Get Your Client Credentials

To begin the integration process for Login with Unstoppable, you will need to obtain and configure your client credentials using the My Clients and Client Configuration pages. Please see the Login Client Configuration guide for more details.

When you've customized your client and saved your changes, you will need the Client Metadata to configure your integration. This can be copied directly from the first section of the Client Configuration page.

Example client metadata
    clientID: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    redirectUri: "http://localhost",
    scope: "openid wallet",

The scope property of your client metadata will default to "openid wallet", which is the minimum scope required for login. You can request additional information from users by adding additional scopes. For information on the other scopes Login supports, see Scopes for Login.

Step 2: Choose Your Integration Path

There are several ways to integrate with Login with Unstoppable, which are listed in the table below.

Because pop-ups are a more integration friendly approach, every integration path except for Login without Pop-up and Node.js Server uses them by default. You can use redirects instead with the login() method of @uauth/js or the shouldLoginWithRedirect configuration option for other @uauth/* libraries.

For dApps built with web3 libraries like web3-react, web3-modal, web3-onboard, and moralis, UAuth provides packages that help you wrap a new UAuth instance in an interface that each library supports. After configuring these packages, you can continue using the web3 library normally.

Integration Guide Package Ethereum Provider Redirect Front-end UI
Login with Pop-up @uauth/js JavaScript
Login without Pop-up @uauth/js React
Web3 React @uauth/web3-react web3-react
Web3 Modal @uauth/web3modal web3-modal
Web3 Onboard @uauth/web3-onboard web3-onboard
Moralis @uauth/moralis moralis
Node.js Server @uauth/node None

The UAuth Demo Application is available for developer use along with a single page sample application to model the flow. Applications can also use Unstoppable Domain’s UAuth Library to simplify the integration.

Step 3: Configure the Login UI

Login with Unstoppable has UI requirements that must be configured to properly display the authenticated user's domain name after a successful login. Please follow the instructions in the Login UI Configuration guide to complete this final step in the integration process.

Step 4: Promote Your Application

Once your integration is live, you can promote your application by submitting it to the official UD app integrations database.

Asking For Help

Having troubles using our services? We’re here to help. Join our Discord Community for real-time support from UD and the community if you need assistance integrating your app.