signIn.sso() ignores oidcPrompt for OAuth strategies
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 78/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- javascript, typescript
- Domain
- authentication
Research direction
Start with the linked SignIn.ts lines 1353–1360 and compare how sso() builds its create parameters with the signup path that already forwards oidc_prompt; also inspect authenticateWithRedirect at lines 443–448. Run the relevant sign-in tests and verify the request includes oidc_prompt=select_account for both affected paths.
Written by the indexing model from the issue text.
Description
Preliminary Checks
- I have reviewed the documentation: https://clerk.com/docs
- I have searched for existing issues: https://github.com/clerk/javascript/issues
- I have not already reached out to Clerk support via email or Discord (if you have, no need to open an issue here)
- This issue is not a question, general help request, or anything other than a bug report directly related to Clerk. Please ask questions in our Discord community: https://clerk.com/discord.
Reproduction
Publishable key
pk_test_bWFpbi1xdWV0emFsLTcyLmNsZXJrLmFjY291bnRzLmRldiQ
Description
Steps to reproduce:
await signIn.sso({
strategy: 'oauth_google',
oidcPrompt: 'select_account',
redirectUrl: '/dashboard',
redirectCallbackUrl: '/sso-callback',
});
Check the POST /v1/client/sign_ins request in the network tab.
Expected behavior:
Body includes oidc_prompt=select_account and Google shows the account picker.
Actual behavior:
oidc_prompt isn't sent, so Google goes straight to the last used account. sso() doesn't pass it to create:
https://github.com/clerk/javascript/blob/568c6689ab25972f66c44e0fb72f025c2d56a7c0/packages/clerk-js/src/core/resources/SignIn.ts#L1353-L1360
authenticateWithRedirect has the same problem (L443-448).
Passing oidc_prompt to the API directly works and sign-up already forwards it, so I think it's just missing from the params here. Similar to #9354.
Happy to open a PR for this.
Environment
System:
OS: macOS 27.2
Binaries:
Node: 24.21.0
bun: 1.4.2
Browsers:
Chrome: 155.0.8059.40
Safari: 27.2
npmPackages:
@clerk/tanstack-react-start: 1.6.5
@clerk/ui: 1.39.0
- Dominant language
- TypeScript
- Stars
- 1.8k
- Forks
- 477
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 324
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from clerk/javascript
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
clerk/javascript#10026 · 1 comment ·
Maintainers usually reply within 1 day
-
@clerk/nextjs: onBeforeSetActive never settles when invalidateCacheAction rejects (e.g. after a redeploy), so setActive and signOut hang foreverPossibly taken @RaphaelFakhri claimed this 4 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
clerk/javascript#9987 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
clerk/javascript#10185 ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 1-2 days Newbie friendliness 45/100
clerk/javascript#10118 ·
Maintainers usually reply within 1 day
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
clerk/javascript#10117 ·
Maintainers usually reply within 1 day
All issues in clerk/javascript
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
cockpit-project/cockpit-machines#2835 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
cloudflare/kumo#866 ·
Maintainers usually reply within 1 day
-
area:connector bug
Difficulty 1/5 Under an hour Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
environment: OPENCODE_API_KEY is described as a Console service account key, but a Go subscription key worksPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
tester-army/e2e#1015 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 1 day