Quick sign-in without credentials. Perfect for testing or guest play.
Traditional email and password authentication with verification.
Sign in with Google accounts using OAuth 2.0.
Sign in with Apple for iOS and macOS apps.
Authenticate using Steam accounts for PC games.
Bring your own identity provider with JWT tokens.
12345678// Anonymous login - creates a new player or returns existingvar player = await Ondara.Auth.LoginAnonymous();
// The player ID persists across sessionsDebug.Log($"Player ID: {player.Id}");
// You can upgrade anonymous accounts laterawait Ondara.Auth.LinkEmail("email@example.com", "password");Players can link multiple auth providers to a single account. This lets them start as anonymous and later add email or social login without losing progress.
123456789101112131415// Link email to existing accountawait Ondara.Auth.LinkEmail("email@example.com", "password");
// Link Google accountawait Ondara.Auth.LinkGoogle();
// Unlink a provider (must have at least one remaining)await Ondara.Auth.UnlinkProvider("google");
// Get all linked providersvar providers = Ondara.Auth.CurrentPlayer.Providers;foreach (var provider in providers){ Debug.Log($"Linked: {provider.Type}");}123456789101112131415161718// Check if player is logged inif (Ondara.Auth.IsLoggedIn){ var player = Ondara.Auth.CurrentPlayer; Debug.Log($"Welcome back, {player.DisplayName}!");}
// Listen for auth state changesOndara.Auth.OnAuthStateChanged += (player) =>{ if (player != null) Debug.Log("Player logged in"); else Debug.Log("Player logged out");};
// Logoutawait Ondara.Auth.Logout();Start with Anonymous Auth
Let players try your game immediately, then prompt them to create an account later.
Handle Auth Errors Gracefully
Always wrap auth calls in try/catch and show user-friendly error messages.
Offer Multiple Providers
Different players prefer different login methods. Support at least 2-3 options.