Auth that gets out of your way
Clean SDKs, predictable APIs, and docs that respect your time. Go from npm install to a working login in under five minutes.
Three steps to your first login
Install the SDK
Add the package for your framework with a single command. Types and helpers included.
npm install @openciam/reactWrap your app
Point the provider at your tenant domain and client ID. PKCE and token refresh are automatic.
<OpenCIAMProvider domain="acme.openciam.io" />Ship login
Call login() and you have SSO, social, passkeys, and MFA — themed to your brand.
const { login } = useAuth();Production auth in a few lines
Idiomatic SDKs, sensible defaults, and copy-paste quickstarts for every stack. PKCE, rotation, and secure cookies are handled for you — so you can focus on your product.
import { OpenCIAMProvider, useAuth } from "@openciam/react";
function App() {
return (
<OpenCIAMProvider domain="acme.openciam.io" clientId="...">
<Dashboard />
</OpenCIAMProvider>
);
}
function Dashboard() {
const { user, login, logout } = useAuth();
if (!user) return <button onClick={login}>Sign in</button>;
return <p>Welcome back, {user.name}</p>;
}First-class libraries for your stack
Official, open-source SDKs with full TypeScript types, automatic token handling, and framework-native ergonomics.
A REST & GraphQL API for everything
Every screen in the dashboard is backed by the same documented API you can call directly.
/oauth/tokenIssue & refresh tokens/userinfoOpenID Connect claims/mfa/challengeTrigger step-up auth/scim/v2/UsersProvision & sync users/consent/grantsRecord consentOwn your customers' identity.
Ship secure login today. Self-host for free, or spin up a managed tenant in under a minute. No credit card, no MAU meter.