Email login
+
in email addressesSMS login
Wallet login
Restrict users to linking a single third-party wallet
option for your application.When enabled, users can only link one wallet to their account, preventing potential confusion or security issues that might arise from multiple linked wallets.OAuth login methods (Google, Twitter, etc.)
Setup your OAuth apps for each provider
Configure your credentials with Privy
Apple
Sign in with Apple
feature, be sure to add
https://auth.privy.io/api/v1/oauth/callback
as a registered redirect URI for your service.Client ID
. You can find this value listed under the Identifier
field in the Service IDs
section:
BundleId
and should be entered as your Client ID
in the privy dashboard. You will still need to create a Sign in with Apple
service associated
with this App ID. Android apps should continue to use the Service ID as their Client ID
.Keys
section of the Apple Developer dashboard.Key ID
and will be used as your Signing key
. Be sure to copy and paste the entire key with the header and footer into the Signing key
input.Discord
GitHub
Client Secret
and set Redirects
. You will need to provide the following to Privy upon completion:LINE
Spotify
TikTok
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:client_id
is referred to as client_key
.Production
status.X (formerly known as Twitter)
Web app, Automated App or Bot
option for Type of App
. You will need to provide the following to Privy upon completion:OAuth 1.0a for Twitter
users.tweet.read
, users.tweet.write
).users/me
endpoint has a rate limit of 450 requests per 15 minutes, and 500 users attempt to authenticate, the last 50 users would be rate-limited and unable to complete the login process.Configure token return and custom scopes
Return OAuth tokens
and making use of the useOAuthTokens hook.If you allow for your application to return OAuth tokens to the front-end, you are also able to configure custom scopes for the OAuth authorization flow, so that the OAuth token returned can be authorized to make API requests beyond the standard scope (such as writes, or authorized access to more granular user data).Telegram login
/setdomain
command in the @BotFather
chat. You will need to provide the following to Privy via the Privy Dashboard upon completion:1234567890:AzByCxDwEvFuGtHsIr1k2M4o5Q6s7U8w9Y0
)@MyBot_bot
)script-src
must allow https://telegram.org
in order to be able to download Telegram’s widget script.frame-src
must allow https://oauth.telegram.org
in order to be able to render Telegram’s widget iframe.http://web.telegram.org
and https://web.telegram.org
to your allowed domains in the dashboard
Settings page.Farcaster login
JWT Verification Details
JWT ID Claim
sub
claim.JWT `aud` Claim (Optional)
aud
accepts multiple values. If any of the aud
values in the JWT are included in the set of allowed aud
values, the JWT will be successfully verified.Why does Privy need this information?
exp
claim).