Skip to main content

Kakao

Sign in with Kakao accounts using OAuth 2.0. Popular in South Korea.

1. Create OAuth App​

  1. Go to Kakao Developers.
  2. Log in with your Kakao account.
  3. Click My Application > Add Application.
  4. Enter the app name and company name, then create it.
  5. Go to App > Platform key > REST API key to find your credentials.
  6. Go to Kakao Login > General and enable Kakao Login.
  7. Go to App > Platform key > REST API key > Redirect URI and add your callback URL (see below).
  8. Go to Kakao Login > Consent Items and enable:
    • Profile Info (nickname, profile image)
    • Account Email — set to Required or Optional

2. Set Redirect URI​

Add your EdgeBase callback URL under App > Platform key > REST API key > Redirect URI:

https://your-edgebase-url/api/auth/oauth/kakao/callback

For local development:

http://localhost:8787/api/auth/oauth/kakao/callback

Use the Kakao Login Redirect URI field for this. Do not register it under Business Authentication Redirect URI.

3. Get Credentials​

In App > Platform key > REST API key:

  • Client ID — Use the REST API Key.
  • Client Secret — Open Client Secret, generate it, and set the activation status to Enable.

Do not use the separate Business Authentication code for EdgeBase's built-in kakao provider.

4. Configure EdgeBase​

// edgebase.config.ts
export default defineConfig({
auth: {
allowedOAuthProviders: ['kakao'],
},
});
export default defineConfig({
auth: {
oauth: {
kakao: {
clientId: 'YOUR_REST_API_KEY',
clientSecret: 'YOUR_CLIENT_SECRET',
},
},
},
});

5. Usage​

client.auth.signInWithOAuth('kakao');

Provider Details​

PropertyValue
ScopesConfigured via consent items (not URL scopes)
PKCENo
EmailYes (if consent granted)
Email verifiedConditional — uses is_email_verified field
AvatarYes — profile_image_url
Refresh tokenYes

Notes​

  • Kakao uses a consent-based scope system. Scopes are configured in the developer console under Consent Items, not in the OAuth URL.
  • Email verification status depends on the user's Kakao account settings. If is_email_verified is true, automatic account linking with existing email accounts will work.
  • User data is nested under kakao_account.profile in the API response — EdgeBase handles this automatically.
  • For production, your app must pass Kakao's review process for certain consent items (like email).
  • As of March 8, 2026, Kakao's console places REST API redirect URI and client secret under App > Platform key > REST API key.
  • OpenID Connect in Kakao is optional. EdgeBase's built-in kakao provider uses the standard OAuth authorize/token flow plus https://kapi.kakao.com/v2/user/me, so you do not need to enable OpenID Connect unless you specifically want Kakao ID tokens.
  • Local verification was completed on March 8, 2026 against http://localhost:8787/api/auth/oauth/kakao/callback using the js-web browser harness. The current result was 2 passed / 7 skipped, which is expected when the signed-in Kakao account does not expose an email-backed/password-capable path in the harness.