Skip to main content

How to use

Use the override config#

import SuperTokens from "supertokens-node";
import ThirdPartyEmailPassword from "supertokens-node/recipe/thirdpartyemailpassword";

SuperTokens.init({
appInfo: {
apiDomain: "...",
appName: "...",
websiteDomain: "..."
},
supertokens: {
connectionURI: "...",
},
recipeList: [
ThirdPartyEmailPassword.init({
override: {
functions: (originalImplementation) => {
return {
...originalImplementation,

// here we are only overriding the function that's responsible
// for signing in or signing up a user.
thirdPartySignInUp: async function (input) {
// TODO: some custom logic

// or call the default behaviour as show below
return await originalImplementation.thirdPartySignInUp(input);
},
// ...
// TODO: override more functions
}
}
}
})
]
});
  • originalImplementation is an object that contains functions that have the original implementation for this recipe. They can be used in your functions as a way to use the SuperTokens' default behaviour.
  • In the above code snippet, we override the signInUp function of this recipe. This function will be used to handle the scenario where a user either signs up or signs in via any third party provider or via email and password.
Looking for older versions of the documentation?
Which UI do you use?
Custom UI
Pre built UI