Sign in once across Solvy, Solviony Cloud, Solviony Hub, and every Solviony product — with a single secure account you control. And for developers, Solviony ID is a free OAuth 2.0 identity provider you can integrate in minutes.
One account. Everywhere we are. With privacy controls that put you — not us — in charge.
Use Solviony ID to sign into Solvy AI, Solviony Cloud, Solviony Hub, Solvionyx OS — and every product we ship next. No new password to remember.
Encrypted credentials, optional two-factor authentication, and active session management. We sign you in — we don't read your messages.
Export your data anytime. Delete your account in two clicks. We don't sell your identity, and we never will.
Solviony ID is a standards-compliant OAuth 2.0 identity provider with PKCE support. Free to integrate. No revenue share. No vendor lock-in.
// Redirect the user to Solviony ID — plain OAuth 2.0 + PKCE, no scopes $verifier = Str::random(64); session(['solviony_verifier' => $verifier]); $challenge = rtrim(strtr(base64_encode(hash('sha256', $verifier, true)), '+/', '-_'), '='); return redirect('https://solviony.com/oauth/authorize?'.http_build_query([ 'client_id' => config('services.solviony.client_id'), 'redirect_uri' => route('solviony.callback'), 'response_type' => 'code', 'code_challenge' => $challenge, 'code_challenge_method' => 'S256', ])); // In your callback route: $token = Http::asForm()->post('https://solviony.com/oauth/token', [ 'grant_type' => 'authorization_code', 'client_id' => config('services.solviony.client_id'), 'redirect_uri' => route('solviony.callback'), 'code' => request('code'), 'code_verifier' => session('solviony_verifier'), ])->json(); $user = Http::withToken($token['access_token']) ->get('https://solviony.com/api/user')->json(); // $user['name'], $user['email'], $user['avatar_url']
import crypto from 'crypto'; // Redirect the user to Solviony ID — plain OAuth 2.0 + PKCE, no scopes const verifier = crypto.randomBytes(48).toString('base64url'); req.session.solvionyVerifier = verifier; const challenge = crypto.createHash('sha256').update(verifier).digest('base64url'); res.redirect(`https://solviony.com/oauth/authorize?${new URLSearchParams({ client_id: process.env.SOLVIONY_CLIENT_ID, redirect_uri: 'https://yourapp.com/auth/callback', response_type: 'code', code_challenge: challenge, code_challenge_method: 'S256', })}`); // In your callback route: const token = await fetch('https://solviony.com/oauth/token', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, body: new URLSearchParams({ grant_type: 'authorization_code', client_id: process.env.SOLVIONY_CLIENT_ID, redirect_uri: 'https://yourapp.com/auth/callback', code: req.query.code, code_verifier: req.session.solvionyVerifier, }), }).then(r => r.json()); const user = await fetch('https://solviony.com/api/user', { headers: { Authorization: `Bearer ${token.access_token}` }, }).then(r => r.json()); // user.name, user.email, user.avatar_url
# Step 1: Send user to authorize (no scope param — Solviony ID doesn't use scopes) GET https://solviony.com/oauth/authorize? client_id=YOUR_CLIENT_ID& redirect_uri=https://yourapp.com/callback& response_type=code # Step 2: Exchange code for token curl -X POST https://solviony.com/oauth/token \ -d "grant_type=authorization_code" \ -d "code=$CODE" \ -d "client_id=$CLIENT_ID" \ -d "client_secret=$CLIENT_SECRET" # Step 3: Read the profile curl https://solviony.com/api/user \ -H "Authorization: Bearer $ACCESS_TOKEN"
It's a single account you create once, then use to sign into every Solviony product — Solvy, Solviony Cloud, Solviony Hub, Solvionyx OS, and anything we launch in the future. Think of it like your Apple ID or Google Account, but specifically for the Solviony ecosystem.
Yes. Creating and using a Solviony ID is free, forever. For developers integrating Solviony ID into their own apps, integration is also free during our public beta and we'll keep generous free tiers after that.
Your credentials are encrypted at rest and in transit. We offer optional two-factor authentication, active session management, and detailed sign-in logs. We never sell your identity data, and you can export or delete your account at any time.
Yes, anytime. Go to your profile settings and choose "Delete account." We'll remove your identity from our systems within 30 days. You can also export all your data before you delete the account.
Solviony ID is a standard OAuth 2.0 identity provider with PKCE support. Request developer access via the link above, and we'll send you a client ID (and a secret, if your app is a confidential/server-side client). There's no proprietary SDK to install — any HTTP client or OAuth library that supports the authorization code flow works, including plain cURL against our REST endpoints. See the code samples above for a working example in PHP, Node.js, or cURL.
Solviony ID doesn't use OAuth scopes today — every access token grants the same read access to a user's standard profile (name, email, avatar) via GET /api/user. Note this is plain OAuth 2.0, not OpenID Connect: there's no id_token, no JWKS endpoint, and no /oauth/userinfo — read the profile from /api/user instead.
Free. Takes 30 seconds. One account for everything Solviony.