tinyhumansai/openhuman · error
[onboarding:api-keys] oauth complete failed
Error message
[onboarding:api-keys] oauth complete failed
What it means
Completing the OpenAI OAuth flow failed during onboarding: the inference_openai_oauth_complete RPC rejected for the pasted callback URL (params.callback_url). The step sets a visible error; oauthAwaitingCallback stays true and the callback URL is kept so the user can retry or correct the paste. Typical causes: malformed/truncated callback URL, code already redeemed, or provider/client-id mismatch core-side.
Source
Thrown at app/src/pages/onboarding/steps/ApiKeysStep.tsx:100
const handleOpenAiOAuthComplete = async () => {
const callback = oauthCallbackUrl.trim();
if (!callback) {
setError(t('onboarding.apiKeys.oauthPasteRedirect'));
return;
}
setOauthBusy(true);
setError(null);
try {
await callCoreRpc({
method: 'openhuman.inference_openai_oauth_complete',
params: { callback_url: callback },
});
setOauthCallbackUrl('');
setOauthAwaitingCallback(false);
setOauthConnected(true);
} catch (err) {
console.warn('[onboarding:api-keys] oauth complete failed', err);
setError(t('onboarding.apiKeys.oauthCompleteFailed'));
} finally {
setOauthBusy(false);
}
};
const handleSave = async () => {
const trimmedOpenai = openai.trim();
const trimmedAnthropic = anthropic.trim();
if (!trimmedOpenai && !trimmedAnthropic && !oauthConnected) {
onSkip();
return;
}
setSaving(true);
setError(null);
try {
if (trimmedOpenai) {View on GitHub (pinned to 7491200858)
Solutions
- Re-copy the full redirect URL from the browser address bar — truncation is the most common cause
- Check the step's error message for the core's rejection reason (invalid code, expired state)
- Retry submit with the corrected URL; a code can be single-use, so re-run 'Connect' to start a fresh flow if it was already redeemed
- Fall back to pasting an API key if OAuth repeatedly fails
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at app/src/pages/onboarding/steps/ApiKeysStep.tsx:100 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17).
Data as JSON: /api/errors/8840b5450c05e9b1.
Report an issue: GitHub.