This page covers the built-in providers. To add a provider Para doesn’t ship, such as your own SSO or another OAuth2 service, use Add custom provider on the same screen. See Custom OAuth and Custom OIDC.
Before you start
- An OAuth app (client) registered with the provider, and admin access to edit its allowed redirect URIs.
- A Para project and API key. Credentials are set per API key, so configure beta and production keys separately.
1. Register Para’s redirect URIs with your provider
Add both redirect URIs for your provider to your OAuth app’s allowed redirect URIs. Para is moving sign-ins to the new callback, so logins can arrive on either one. Keep both registered.
Replace
<provider> with google, apple, twitter, discord, or facebook. For example, Google on production:
2. Add your credentials
- Developer Portal
- Para CLI
1
Open Authentication
In the Developer Portal, select your project and API key, then open Authentication.
2
Expand the provider
Under Embedded Wallets, expand the provider’s row (Google, X, Apple, Discord, or Facebook) and click Use your own credentials.
3
Fill in the connection
- Handle: a unique name for this connection, such as
my-google. Lowercase letters, digits,-and_. It can’t be changed later, and a provider name likegoogleis reserved. - Display name (internal): optional, shown only in the dashboard.
- Client ID: from your OAuth app.
- Apple only: your Apple Team ID and the Key ID of your Sign in with Apple private key.
4
Save the client secret
The Set Client Secret dialog opens next. Paste your client secret. For Apple, paste the full contents of the
.p8 private key file. The secret is stored encrypted and never shown again; saving a new one replaces it.Save the client secret right after you register the connection. A connection without a secret can’t complete sign-ins on current SDKs.
Switching back to Para’s credentials
Turn the connection off, or remove it, from the provider’s row in the Developer Portal (or withpara keys config oauth update <handle> --no-enabled / remove). Logins with that provider then use Para’s credentials again. For Apple and Facebook, the identifier change applies in this direction too.
Troubleshooting
The provider says the redirect URI doesn't match
The provider says the redirect URI doesn't match
Register both redirect URIs from step 1, for the same environment as your API key: production keys use
api.getpara.com, beta keys use api.beta.getpara.com. The URI must match exactly, including the provider slug (twitter for X).Returning Apple or Facebook users get a new, empty account
Returning Apple or Facebook users get a new, empty account
Expected after switching credentials: those providers issue a different user identifier per app. See the warning under Before you start.
Sign-in fails right after adding the connection
Sign-in fails right after adding the connection
Check that the connection shows no Secret needed badge. If it does, set the secret from the connection’s menu or with
para keys config oauth set-secret <handle>.Next steps
- Configure Authentication: choose and order login methods
- Custom OIDC and Custom OAuth: add a provider Para doesn’t ship