In drei Schritten startklar
Vom API-Schlüssel zur ersten authentifizierten Anfrage in unter fünf Minuten.
Erstellen Sie ein Konto und registrieren Sie einen OAuth-Client in der Entwicklerkonsole. Sie erhalten client_id und client_secret.
# Developer console
https://uniauth.id/account/developer
# Or via Admin API
POST /api/admin/oauth-clients
{
"name": "My App",
"redirect_uris": ["https://app.example/cb"]
}Verwenden Sie den Token-Endpunkt, um einen Autorisierungscode gegen ein Access-Token und ein ID-Token einzutauschen.
curl -X POST https://uniauth.id/api/oauth/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=authorization_code" \
-d "code=AUTH_CODE" \
-d "client_id=YOUR_CLIENT_ID" \
-d "client_secret=YOUR_SECRET" \
-d "redirect_uri=https://app.example/cb" \
-d "code_verifier=PKCE_VERIFIER"Der Token-Endpunkt liefert ein Access-Token, ein ID-Token und ein Refresh-Token. Verwenden Sie das Access-Token, um geschützte Endpunkte aufzurufen.
{
"access_token": "eyJhbGci...",
"token_type": "Bearer",
"expires_in": 3600,
"refresh_token": "dGhpcyBpcyBh...",
"id_token": "eyJhbGci...",
"scope": "openid profile email"
}API-Endpunkte nach Kategorie
32 Endpunkte in sechs Gruppen. Jeder Endpunkt erzwingt Rate Limiting, validiert den Content-Type und liefert konsistente Fehlerobjekte.
Authentifizierung
6 Endpunkte/api/auth/loginAuthentifiziert einen Benutzer mit E-Mail und Passwort. Liefert ein Sitzungstoken und löst 2FA aus, falls aktiviert.
/api/auth/registerErstellt ein neues Benutzerkonto mit E-Mail, Passwort und optionalen Profilfeldern.
/api/auth/logoutBeendet die aktuelle Sitzung, widerruft Tokens und löst Backchannel-/Frontchannel-Logout für OAuth-Clients aus.
/api/auth/forgot-passwordSendet eine E-Mail zum Zurücksetzen des Passworts mit einem SHA-256-gehashten, zeitlich begrenzten Token.
/api/auth/reset-passwordSetzt das Passwort mit dem Token aus forgot-password zurück. Erzwingt Passworthistorie und Stärkeprüfungen.
/api/auth/verify-emailBestätigt den Besitz der E-Mail-Adresse mit dem bei der Registrierung gesendeten Verifizierungstoken.
OAuth 2.0 / OIDC
6 Endpunkte/api/oauth/authorizeStartet den OAuth-2.0-Authorization-Code-Flow mit PKCE. Leitet zum Login und dann zum Einwilligungsbildschirm weiter.
/api/oauth/tokenTauscht einen Autorisierungscode gegen Tokens, erneuert Tokens oder verarbeitet Device- und Client-Credentials-Grants.
/api/oauth/userinfoLiefert die OIDC-Claims des authentifizierten Benutzers. Unterstützt GET und POST gemäß OIDC Core Abschnitt 5.3.1.
/api/oauth/revokeWiderruft ein Access- oder Refresh-Token. Unterstützt den Parameter token_type_hint.
/api/oauth/introspectPrüft ein Token auf Aktivstatus, Scopes und Metadaten (RFC 7662).
/.well-known/openid-configurationOIDC-Discovery-Dokument mit allen Endpunkten, unterstützten Scopes, Claims und Algorithmen.
Benutzerverwaltung
4 Endpunkte/api/user/profileRuft das vollständige Profil des authentifizierten Benutzers ab, einschließlich OIDC-Standard-Claims und Einstellungen.
/api/user/profileAktualisiert Profilfelder: Anzeigename, Bio, Locale, soziale Links, Adresse und mehr.
/api/user/sessionsListet alle aktiven Sitzungen des authentifizierten Benutzers mit Geräteinfo und letzter Aktivität auf.
/api/user/sessionsWiderruft eine bestimmte Sitzung per ID oder alle anderen Sitzungen (Invalidierung bei Passwortänderung).
Organisationen / Teams
8 Endpunkte/api/user/organizationsErstellt eine Organisation im Self-Service. Der Ersteller wird Owner (max. 10 eigene Organisationen); startet im Team-Tarif.
/api/org/{id}/usersListet und verwaltet Mitglieder und Rollen der Organisation (owner/admin/member). Sitzplatzlimit von 25 im Team-Tarif (HTTP 402 bei Überschreitung).
/api/org/{id}/invitationsLädt ein Mitglied per E-Mail mit token-basierter Annahme ein. Die Kapazität wird bei Einladung und Annahme geprüft.
/api/org/{id}/groupsErstellt und verwaltet Organisationsgruppen und deren Mitglieder. Gruppennamen erscheinen im OIDC-groups-Claim.
/api/org/{id}/clients/{cid}/scim-tokenStellt das SCIM-Token pro Client für eine Organisation aus oder rotiert es. Enterprise-Tarif — andernfalls 402 upgrade_required.
/api/org/{id}/domainsFügt eine benutzerdefinierte Domain für die Organisation hinzu und verifiziert sie. Enterprise-Tarif — steuert domänenbezogenes SSO und Capture.
/api/org/{id}/saml-idpsKonfiguriert eingehendes SSO: SAML-SP und föderierte OIDC-IdPs (auch /federated-idps). Enterprise-Tarif.
/api/org/{id}/billingStripe-Abrechnung pro Organisation: Abostatus, Sitzplätze und Checkout. Jede Organisation ist ein eigener Kunde, Abrechnung pro Sitzplatz.
SCIM-2.0-Provisionierung
4 Endpunkte/api/scim/v2/UsersListet oder durchsucht Benutzer mit SCIM-Filtersyntax. Unterstützt Paginierung und Attributprojektion.
/api/scim/v2/UsersProvisioniert einen neuen Benutzer über SCIM. Bildet das SCIM-Benutzerressourcenschema auf die UniAuth-Tabelle users ab.
/api/scim/v2/GroupsListet oder durchsucht Gruppen. Enthält Mitgliedsreferenzen und unterstützt Filterabfragen.
/api/scim/v2/BulkFührt mehrere SCIM-Operationen in einer einzigen Anfrage aus. Maximal 100 Operationen pro Batch.
Admin
4 Endpunkte/api/admin/usersListet alle Benutzer mit Paginierung, Suche, Rollenfilter und Sortierung auf. Erfordert Admin- oder Moderatorrolle.
/api/admin/analyticsRuft Plattform-Analysen ab: DAU/WAU/MAU, Login-Trends, 2FA-Verbreitung, Aufschlüsselung der Auth-Methoden.
/api/admin/audit-eventsFragt das manipulationssichere Audit-Protokoll ab. Filterbar nach Kategorie, Akteur, Ziel, Zeitraum und Ereignistyp.
/api/admin/webhooksRegistriert einen Webhook-Endpunkt mit Ereignisabonnements und HMAC-SHA256-Signaturgeheimnis.
API-Authentifizierungsmethoden
Vier Möglichkeiten, API-Anfragen zu authentifizieren — je nach Endpunkt und Anwendungsfall.
Übergeben Sie das Access-Token im Authorization-Header. Für OAuth-geschützte Endpunkte wie userinfo, Token-Introspektion und Client-zu-Client-API-Aufrufe.
GET /api/oauth/userinfo
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...
Accept: application/jsonFirst-Party-Anfragen verwenden ein nach dem Login gesetztes HttpOnly-, Secure-, SameSite=Lax-Cookie. Für Benutzerseiten und die Account-/Admin-APIs.
GET /api/user/profile
Cookie: auth_token=eyJhbGci...
# HttpOnly — not accessible via JS
# SameSite=Lax — CSRF protectionDPoP (RFC 9449) bindet Tokens an einen bestimmten Client-Schlüssel. Senden Sie das DPoP-Proof-JWT zusammen mit dem Access-Token. Verhindert Token-Diebstahl und Replay.
GET /api/oauth/userinfo
Authorization: DPoP eyJhbGci...
DPoP: eyJ0eXAiOiJkcG9wK2p3dCIs...
# Proof JWT includes htm, htu, iat, jtiSCIM-Provisionierungs-Endpunkte authentifizieren sich über ein dediziertes SCIM-Token pro OAuth-Client. Das Token wird als SHA-256-Hash gespeichert und gilt nur für eine Organisation.
GET /api/scim/v2/Users
Authorization: Bearer scim_token_abc123...
Content-Type: application/scim+jsonOffizielle Client-Bibliotheken
Typisierte SDKs für JavaScript und React mit integriertem PKCE, Token-Lebenszyklus und Logout.
JavaScript-/TypeScript-SDK
@uniauth/js
Vanilla-JS-Client mit PKCE, OIDC-Discovery, automatischer Token-Erneuerung, typisierten Fehlern und Logout mit Widerruf. Läuft in Node.js und im Browser.
npm install @uniauth/jsReact-SDK
@uniauth/react
React-Provider, Hooks und vorgefertigte Komponenten: UniAuthProvider, useUser, LoginButton, LogoutButton, ProtectedRoute und UserProfile.
npm install @uniauth/reactRate Limits pro Endpunkt
Alle Endpunkte sind zum Schutz der Plattform ratenlimitiert. Die Limits gelten für ein gleitendes 15-Minuten-Fenster.
POST /api/auth/loginPOST /api/auth/registerPOST /api/auth/forgot-passwordPOST /api/auth/verify-*POST /api/scim/v2/BulkAlle anderen EndpunkteRate-Limit-Header (X-RateLimit-Limit, X-RateLimit-Remaining, Retry-After) sind in jeder Antwort enthalten. Ist Redis konfiguriert, gelten die Limits über alle Serverinstanzen hinweg.