Authentication

Learn about how to integrate easily with other Authentication providers

Servicebot works with any Authentication provider. The only requirements for Servicebot is that the a customer's email or Stripe Customer ID is passed to it, and a hashed version of that is generated and passed to the Servicebot embed.

Below are some samples and code snippets with integrations to popular Authentication providers.

Auth0

Using Auth0, you can generate and store the Servicebot Hash using an Auth0 rule. That hash can then be passed to the Servicebot embed, along with the logged-in user's email.

function(user, context, callback) {
user.app_metadata = user.app_metadata || {};
const crypto = require("crypto");
let secret = configuration.ServiceBotSecret;
let email = user.email;
const hmac = crypto.createHmac(
"sha256",
secret
).update(email).digest("hex");
user.app_metadata.hmac = hmac;
// persist the app_metadata update
auth0.users.updateAppMetadata(user.user_id, user.app_metadata)
.then(function() {
callback(null, user, context);
})
.catch(function(err) {
callback(err);
});
return callback(null, user, context);
}