This feature is in beta. Core behavior is stable, but some APIs or configuration may change before general availability.
Sign in with Reddit accounts using OAuth 2.0.
As of March 2026, Reddit's current policy says API access requires explicit approval. In practice, the old /prefs/apps form may appear to submit but still refuse to create the app until your account/use case is approved.
Start here if app creation keeps failing:
1. Create OAuth App
- Go to Reddit Apps.
- Scroll to the bottom and click create another app....
- Fill in:
- name: Your app name
- app type: Choose web app
- redirect uri: Your EdgeBase callback URL (see below)
- Click create app.
For EdgeBase's built-in reddit provider, choose web app. Do not use the installed app or script app types for this flow.
2. Set Redirect URI
Set the redirect uri to:
https://your-edgebase-url/api/auth/oauth/reddit/callback
For local development:
http://localhost:8787/api/auth/oauth/reddit/callback
3. Get Credentials
On the Reddit app page:
- Client ID — The short string shown directly under the app name
- Client Secret — The value labeled
secret
Reddit's UI does not label the client ID as client_id in an obvious way. It is the short string under the app name, not the app name itself.
4. Configure EdgeBase
// edgebase.config.ts
export default defineConfig({
auth: {
allowedOAuthProviders: ['reddit'],
},
});
export default defineConfig({
auth: {
oauth: {
reddit: {
clientId: 'YOUR_CLIENT_ID',
clientSecret: 'YOUR_CLIENT_SECRET',
},
},
},
});
5. Usage
- JavaScript
- Dart/Flutter
- Swift
- Kotlin
- Java
- C#
- C++
client.auth.signInWithOAuth('reddit');
await client.auth.signInWithOAuth('reddit');
let url = client.auth.signInWithOAuth(provider: "reddit")
// Open url in SFSafariViewController or ASWebAuthenticationSession
client.auth.signInWithOAuth("reddit")
client.auth().signInWithOAuth("reddit");
client.Auth.SignInWithOAuth("reddit");
OAuth requires a browser redirect flow. For C++ (Unreal Engine), handle OAuth in a platform webview and pass the token to the SDK.
Provider Details
| Property | Value |
|---|---|
| Scopes | identity |
| PKCE | No |
| No | |
| Email verified | No |
| Avatar | Yes — snoovatar_img or icon_img |
| Refresh token | Yes — EdgeBase requests duration=permanent |
Notes
- Reddit sign-in uses the
identityscope only. Reddit does not expose email in this built-in provider flow. - Because no verified email is available, automatic account linking does not occur.
- Token exchange uses HTTP Basic auth with the Reddit client ID and secret.
- EdgeBase requests
duration=permanentso Reddit can return a refresh token for the provider-side session. - Reddit's older
/prefs/appsUI still exists, but API approval policy has become stricter. If the form silently fails after CAPTCHA, request API access first and describe the use case as a small OAuth login integration using theidentityscope only.