Your customers expect options when they hit your login screenYou know that isn’t always a
simple ask.

Remove barriers to awesomeness. Our API takes care of all major identity providers and security with SAML, OAuth, and OpenID

Built by a team of security experts

Built by a team of security experts

Globally trusted & proven

Globally trusted & proven

Increase conversions by offeringsthe login options your customers trust

Increase conversions by offerings
the login options your customers trust

Works with your existing front & back end,  or use our free JavaScript library

Works with your existing front & back end,
or use our free JavaScript library

One simple implementation, as many
customer configurations as needed

OUR API LIBRARY IS AVAILABLE IN ALL POPULAR LANGUAGES
One simple implementation supports all your customers with specific login options, without the need to duplicate your login screen for each customer

OUR API LIBRARY IS AVAILABLE IN ALL POPULAR LANGUAGES One simple implementation supports all your customers with
specific login options, without the need to duplicate your login screen
for each customer

LOW TOUCH, NO CHANGES TO YOUR CURRENT WORKFLOW 
CONNECTING TO OUR API
Or use our free Javascript library if you prefer, and receive lifetime
free updates as protocols and passwordless options evolve

LOW TOUCH, NO CHANGES TO YOUR CURRENT WORKFLOW
CONNECTING TO OUR API
Or use our free Javascript library if you prefer, and receive lifetime
free updates as protocols and passwordless options evolve

SUPPORT MFA OUR OF THE BOX, EVEN COMBINED WITH USING AN
IDENTITY PROVIDER LIKE MICROSOFT OR GOOGLE
Automate login screen options with our provisioning API

SUPPORT MFA OUR OF THE BOX, EVEN COMBINED WITH USING AN
IDENTITY PROVIDER LIKE MICROSOFT OR GOOGLE
Automate login screen options with our provisioning API

AI CAPABILITIES
We use AI to suggest the ideal login option for each user that hits your login screen

AI CAPABILITIES We use AI to suggest the ideal login option for each user that
hits your login screen

We did the heavy lifting

Your App or site has a local DB
& login screen that you support

Your App or site has a local DB & login screen that you support

Your customers trust different identity providers and corporate SSO deployments like OKTA

Your customers trust different identity providers and corporate SSO deployments like OKTA

Just add the Google button. Easy, right? What
about your customers that don't want to see 
Google on your login screen?

Just add the Google button. Easy, right? What about your customers that don't want to see Google on your login screen?

Supporting a simple implementation like OIDC for Google doesn't 
mean you now support everything. You are probably being asked 
today about other protocols and identity providers. Start saying 'YES!'
to your customers. We support all of them

Supporting a simple implementation like OIDC for Google doesn't mean you now support everything. You are probably being asked today about other protocols and identity providers. Start saying 'YES!' to your customers. We support all of them

Your dev team has other priorities and
fires to put out. We did all the hard work
for you, for a simple low monthly fee

Your dev team has other priorities and fires to put out. We did all the hard work for you, for a simple low monthly fee

Provide Audit & control to your customers.

Provide Audit & control to your customers.

Audit See who logged in,
including when, where, & with what device

Control Decide who can access your
system & when

Export Easily export detailed audit data
for all logins to your system

Deploy Anywhere

Cloud & Private Cloud deployment on AWS, Azure & Google. Local deployments are available via Docker image.

Stay compliant.

Let us show you how easy it is, continue
with any account you have below

Let us show you how easy it is, continue with any account you have below

Yes, we support all of these. Need a different identity Provider? Connect with our development team LogonLabs

User management

For those looking to get out of the password business altogether, we support the good old email & local password
combination, using either your existing user management system or ours.

Logon Labs

The unified LogonLabs experience channels all users into the same workflow so you can process a login with a local password in exactly the same way as a login from Google or Okta.

Logon Labs

LogonLabs user management includes:

Logon Labs
Logon Labs

Dynamic password security configuration

Integrate with our JS login experience.

Logon Labs

Implement password strength requirements
& expiry easily from the Management UI

Rules enforced instantly & automatically

Rules can be adjusted at any time as
requirements shift, without needing to
change any code on your website

Logon Labs

We did the hard work so you can take the credit

So simple a typical customer can implement within the same day. No need to migrate your user database.

Once your account is set up it just takes two snippets of code. Existing users do not have to re-register.

Add this to your front end
JavaScript
Swift
<!DOCTYPE html>
<html>
<head>
 <title>LogonLabs Sample</title>
 <style> .logonlabs { width: 300px; } </style>
 <script>
   window.logonAsync = function() {
     LogonClient.configure({
       app_id: '{APP_ID}'
     });
     LogonClient.ui.button('logonlabs-buttons');
     LogonClient.ui.button('logonlabs-icons', {
       theme: 'icon'
     });
   };
 </script>
 <script async defer src="https://cdn.logonlabs.com/dist/logonlabs.min.js"/>
</head>
<body>
 <h2>LogonLabs Sample</h2>
 <div id="logonlabs-buttons" class="logonlabs"></div>
 <div id="logonlabs-icons" class="logonlabs"></div>
</body>
</html>

                     
import LogonLabs;


var body: some View {
 VStack {
     Button(action: {
         let logonClient = LogonClient(
             baseUri: "https://api.logonlabs.com",
             appId: "{APP_ID}");

         logonClient.startLogin(
             identity_provider: "google",
             destinationUrl: "{APP_URL_SCHEME}") {error in
             if(error != nil) {
                 print(error.description!)
               }
             }
     }) {
       Text("Start SSO Workflow")
     }
 }
}

                     
Add this to your back end
PHP
.NET
JAVA
PYTHON
NODE.JS
<?php
require(__DIR__ . '/vendor/autoload.php');

use LogonLabs\IdPx\API\LogonClient as LogonClient;
use LogonLabs\IdentityProviders as IdentityProviders;

$logonClient = new LogonClient(array(
 'app_id' => '{APP_ID}',
 'app_secret' => '{APP_SECRET}',
 'api_path' => 'https://api.logonlabs.com'
 
));

$token = $_REQUEST['token'];

$loginData = $logonClient->validateLogin($token);

if ($loginData['body']['event_success']) {
 // authentication and validation succeeded.
 // proceed with post-auth workflows for your system.
}

                     
var logonClient = new LogonLabs.IdPx.API.LogonClient(
"{APP_ID}", 
"https://api.logonlabs.com", 
"{APP_SECRET}"
);

var token = this.Request.Query[Constants.QueryString.token];

var loginData = logonClient.ValidateLogin(token);

if (loginData.event_success)
{
// authentication and validation succeeded.
// proceed with post-auth workflows for your system.
}

             
import com.logonlabs.LogonClient;
import com.logonlabs.dtos.ValidateLoginResponse;
import com.logonlabs.dtos.SsoValidationDetails;

LogonClient client = new LogonClient(
"{APP_ID}",
"{APP_SECRET}",
"https://api.logonlabs.com");

String queryToken = client.parseToken(callbackUrl);

ValidateLoginResponse response = client.validateLogin(queryToken);

if(response.isEventSuccess()) {
//authentication and validation succeeded. 
//proceed with post-auth workflows for your system.
}

from logonlabs.client import Logonlabs

logonClient = Logonlabs(
'{APP_ID}',
'{APP_SECRET}',
'https://api.logonlabs.com'
)

request_headers = self.headers
token = request_headers["token"]
response = logonClient.validateLogin(token)
data = response.json()
if data['event_success']:
# authentication and validation succeeded.
# proceed with post-auth workflows for your system.


                     
const client = require('logonlabs-nodejs');
     ('{APP_ID}',
     '{APP_SECRET}',
     'https://api.logonlabs.com'
);

let token = client.parseToken(callback_url);

let response = client.validateLogin(token);

if(response.isEventSuccess()) {
// authentication and validation succeeded.
// proceed with post-auth workflows for your system.

}