Appearance
Login methods
Use the Login Methods page of the dashboard to configure login and linking methods for your app.
Enabling login methods
When enabling login methods, enable all account types that you'd like users to be able to login with or link to your app.
You can always customize which account types you'd like to present for login specifically using Privy's SDKs.
On disabled login methods, Privy will automatically reject any request to login with or link that account type for your app ID.
Enabling OAuth logins
When enabling OAuth (social) logins, you can configure to use your own app's OAuth credentials for each account type. By default, Privy's social login options use Privy's default OAuth credentials that the Privy team has configured with each provider.
Configuring your own OAuth credentials has many benefits:
- Your app has more control over security and resiliency.
- Your users will see your branding on the social login provider's authentication screen.
TIP
Just getting started with Privy? We recommend you complete your integration in development using Privy's default credentials first. Before going to production, you can easily swap in your own credentials!
1. Setup your OAuth apps for each provider
To configure OAuth credentials for a given provider, first create an OAuth app with your chosen provider, following the provider-specific instructions below.
For all providers, during setup, specify Privy's OAuth callback endpoint as your redirect URI:
https://auth.privy.io/api/v1/oauth/callback
Google
Follow this guide. When you are creating your app, make sure to specify Web App
for your app type (it will be treated as a web app in the context of OAuth since you are using Privy). You will need to provide the following to Privy upon completion:
- Client ID
- Client secret
Apple
Follow this guide to configure your Apple app, service, and key. Note that Apple differs from the rest of the providers in a few ways. You will need to provide the following to Privy upon completion:
- Team ID: the identifier associated with your Apple developer account.
- Services ID: this will be used as your
Client ID
. - Key ID: the identifier associated with your key.
- Key: this will be used as your
Signing key
.
INFO
If you have an app that has users who have already logged in using Privy's default credentials, we do not yet support migrating these users. If you'd like to test using your own credentials in a development environment, you can do so by creating a new app and setting your credentials before any Apple users log in.
X (formerly known as Twitter)
Follow this guide to create an X (formerly known as Twitter) app. Make sure to configure your app as a "Public client". In the application authentication settings this is the Native App
option for Type of App
. You will need to provide the following to Privy upon completion:
- Client ID
- Client Secret
LinkedIn
Follow this guide. You will need to provide the following to Privy upon completion:
- Client ID
- Primary Client Secret
INFO
If you have an app that has users who have already logged in using Privy's default credentials, we do not yet support migrating these users. If you'd like to test using your own credentials in a development environment, you can do so by creating a new app and setting your credentials before any LinkedIn users log in.
GitHub
Follow this guide to create a GitHub OAuth App. Do not enable device flow. You will need to provide the following to Privy upon completion:
- Client ID
- Client secret
Discord
Follow this guide to register a developer application. After Creating a Discord app, use the OAuth2 settings to generate a Client Secret
and set Redirects
. You will need to provide the following to Privy upon completion:
- Client ID
- Client Secret
Spotify
Follow this guide to register a developer application. After Creating a Spotify app, use the OAuth2 settings to generate a Client Secret
and set Redirects
. You will need to provide the following to Privy upon completion:
- Client ID
- Client Secret
TikTok
Follow the instructions in the 'Prerequisites' section of this guide to register your app and enable LoginKit. When you are creating your app, make sure to specify Configure for Web
for your app type (it will be treated as a web app in the context of OAuth since you are using Privy).
TikTok is different from other providers in a few key ways:
- Your OAuth
client_id
is referred to asclient_key
. - You are required to provide a Terms of Service URL and Privacy Policy URL when creating your app.
- TikTok conducts a review process, and your new credentials will not work until your app is approved and move to
Production
status.
You will need to provide the following to Privy upon completion:
- Client key (as described above)
- Client secret
INFO
If you have an app that has users who have already logged in using Privy's default credentials, we do not yet support migrating these users. If you'd like to test using your own credentials in a development environment, you can do so by creating a new app and setting your credentials before any TikTok users log in.
2. Configuring your credentials with Privy
WARNING
Your custom credentials will go live to all your users as soon as you save them in the dashboard. We highly encourage you to test them in a development app before setting them for your production app.
Go to the Privy dashboard, select your desired app from the dropdown in the sidebar, and navigate to the Login methods page. Click on the settings icon next to the provider name to navigate to the credentials input screen. If a provider does not have a settings icon, it does not currently support configuring your own credentials.
Notes
- You can update them anytime, with the exception of Apple, LinkedIn, and TikTok.
- You can set and save credentials for disabled providers. These credentials will be stored and will be used for that provider’s requests once you enable it.
- If you are experiencing an issue after setting your own credentials, you can roll back to using Privy's default credentials by removing your own from the configuration screen. We only recommend doing this if you are experiencing an issue as moving to use your own credentials is best practice. This will not work for Apple, LinkedIn, or TikTok if you have existing users.
FAQ
Can I delete my custom credentials and go back to using the Privy default ones?
You can remove your credentials from the same page you configured them to go back to using Privy's defaults. We only recommend doing this if you are experiencing an issue with your own credentials as migrating to your own credentials is the best practice.
For Apple, LinkedIn, and TikTok, once your credentials are in use, you will not be able to reset them due to user migration (see below).
Will migrating to custom credentials impact my users?
For most providers, the change will be undetectable by end users, other than their seeing your app’s name next time the log in (rather than Privy’s). For Apple, LinkedIn, and TikTok, if your app currently uses Privy's default credentials, we do not support updating to custom credentials. This process requires a migration which we have not yet built.