different-ai/openwork · error · DenApiError
desktop_signup_deprecated
desktop_signup_deprecated
Error message
Create your account in the browser to choose a secure password.
What it means
signUpEmail is intentionally unsupported: desktop email/password signup was deprecated in favor of the browser-based Den signup flow (which provides password-strength feedback and invite handling). Any call throws a 410 Gone DenApiError with code "desktop_signup_deprecated". The parameters are ignored.
Source
Thrown at apps/app/src/app/lib/den.ts:2941
async signInEmail(email: string, password: string): Promise<DenAuthResult> {
const payload = await requestJson<unknown>(baseUrls, "/api/auth/sign-in/email", {
method: "POST",
body: {
email: email.trim(),
password,
},
});
return { user: getUser(payload), token: getToken(payload) };
},
/**
* @deprecated Desktop email/password signup is no longer supported directly.
* Open the Den browser signup flow with `buildDenAuthUrl(baseUrl, "sign-up")`
* so password-strength feedback and invite handling stay server-compatible.
*/
async signUpEmail(_email: string, _password: string): Promise<DenAuthResult> {
throw new DenApiError(
410,
"desktop_signup_deprecated",
"Create your account in the browser to choose a secure password.",
);
},
async signOut() {
await requestJson<unknown>(baseUrls, "/api/auth/sign-out", {
method: "POST",
token,
body: {},
});
},
async getSession(): Promise<DenUser> {
const payload = await requestJson<unknown>(baseUrls, "/v1/me", {
method: "GET",
token,View on GitHub (pinned to 2b7df46e8a)
Solutions
- Replace signUpEmail calls with opening buildDenAuthUrl(baseUrl, "sign-up") in the browser
- Route the user through the browser signup and complete sign-in via the desktop handoff flow
- Remove dead signup UI from the desktop app
Example fix
// before
await client.auth.signUpEmail(email, password);
// after
openExternal(buildDenAuthUrl(baseUrl, "sign-up"));
const result = await exchangeHandoffAndSignIn(grant, { baseUrl }); Defensive patterns
Strategy: validation
Validate before calling
const supportsDesktopSignup = false; // deprecated upstream if (wantsSignUp) openExternal(buildDenAuthUrl(baseUrl, "sign-up"));
Try / catch
try {
await client.auth.signUpEmail(email, password);
} catch (err) {
if (err instanceof DenApiError && err.code === "desktop_signup_deprecated") {
openExternal(buildDenAuthUrl(baseUrl, "sign-up"));
} else throw err;
} Prevention
- Never call signUpEmail; it always throws 410
- Direct users to the browser signup via buildDenAuthUrl(baseUrl, "sign-up")
- Complete sign-in through the desktop handoff flow after browser signup
- Remove legacy signup UI from desktop surfaces
When it happens
Trigger: Calling client.auth.signUpEmail(email, password) directly from the desktop app.
Common situations: Old code paths or custom scripts written before the deprecation that attempted in-app account creation.
Related errors
- Failed to sign in to OpenWork Cloud.
- request_failed
- invalid_session_payload
- invalid_app_version_payload
- invalid_resource_snapshot_payload
AI-assisted analysis of different-ai/openwork@2b7df46e8a (2026-09-01).
Data as JSON: /api/errors/e2915648e78f1e82.
Report an issue: GitHub.