These are the SDK reference docs. If you’re looking for docs to implement SuperTokens, you might want to check out the User Guides

Module recipe/emailpassword

Index

Type aliases

APIInterface

APIInterface: { emailExistsGET: undefined | ((input: { email: string; options: APIOptions }) => Promise<{ exists: boolean; status: "OK" }>); generatePasswordResetTokenPOST: undefined | ((input: { formFields: { id: string; value: string }[]; options: APIOptions }) => Promise<{ status: "OK" }>); passwordResetPOST: undefined | ((input: { formFields: { id: string; value: string }[]; options: APIOptions; token: string }) => Promise<{ status: "OK" | "RESET_PASSWORD_INVALID_TOKEN_ERROR" }>); signInPOST: undefined | ((input: { formFields: { id: string; value: string }[]; options: APIOptions }) => Promise<{ status: "OK"; user: User } | { status: "WRONG_CREDENTIALS_ERROR" }>); signUpPOST: undefined | ((input: { formFields: { id: string; value: string }[]; options: APIOptions }) => Promise<{ status: "OK"; user: User } | { status: "EMAIL_ALREADY_EXISTS_ERROR" }>) }

Type declaration

  • emailExistsGET: undefined | ((input: { email: string; options: APIOptions }) => Promise<{ exists: boolean; status: "OK" }>)
  • generatePasswordResetTokenPOST: undefined | ((input: { formFields: { id: string; value: string }[]; options: APIOptions }) => Promise<{ status: "OK" }>)
  • passwordResetPOST: undefined | ((input: { formFields: { id: string; value: string }[]; options: APIOptions; token: string }) => Promise<{ status: "OK" | "RESET_PASSWORD_INVALID_TOKEN_ERROR" }>)
  • signInPOST: undefined | ((input: { formFields: { id: string; value: string }[]; options: APIOptions }) => Promise<{ status: "OK"; user: User } | { status: "WRONG_CREDENTIALS_ERROR" }>)
  • signUpPOST: undefined | ((input: { formFields: { id: string; value: string }[]; options: APIOptions }) => Promise<{ status: "OK"; user: User } | { status: "EMAIL_ALREADY_EXISTS_ERROR" }>)

APIOptions

APIOptions: { config: TypeNormalisedInput; emailVerificationRecipeImplementation: RecipeInterface; isInServerlessEnv: boolean; recipeId: string; recipeImplementation: RecipeInterface; req: BaseRequest; res: BaseResponse }

Type declaration

RecipeInterface

RecipeInterface: { createResetPasswordToken: any; getUserByEmail: any; getUserById: any; resetPasswordUsingToken: any; signIn: any; signUp: any; updateEmailOrPassword: any }

Type declaration

  • createResetPasswordToken:function
    • createResetPasswordToken(input: { userId: string }): Promise<{ status: "OK"; token: string } | { status: "UNKNOWN_USER_ID_ERROR" }>
  • getUserByEmail:function
    • getUserByEmail(input: { email: string }): Promise<undefined | User>
  • getUserById:function
    • getUserById(input: { userId: string }): Promise<undefined | User>
  • resetPasswordUsingToken:function
    • resetPasswordUsingToken(input: { newPassword: string; token: string }): Promise<{ status: "OK" | "RESET_PASSWORD_INVALID_TOKEN_ERROR" }>
    • Parameters

      • input: { newPassword: string; token: string }
        • newPassword: string
        • token: string

      Returns Promise<{ status: "OK" | "RESET_PASSWORD_INVALID_TOKEN_ERROR" }>

  • signIn:function
    • signIn(input: { email: string; password: string }): Promise<{ status: "OK"; user: User } | { status: "WRONG_CREDENTIALS_ERROR" }>
  • signUp:function
    • signUp(input: { email: string; password: string }): Promise<{ status: "OK"; user: User } | { status: "EMAIL_ALREADY_EXISTS_ERROR" }>
    • Parameters

      • input: { email: string; password: string }
        • email: string
        • password: string

      Returns Promise<{ status: "OK"; user: User } | { status: "EMAIL_ALREADY_EXISTS_ERROR" }>

  • updateEmailOrPassword:function
    • updateEmailOrPassword(input: { email?: string; password?: string; userId: string }): Promise<{ status: "OK" | "UNKNOWN_USER_ID_ERROR" | "EMAIL_ALREADY_EXISTS_ERROR" }>
    • Parameters

      • input: { email?: string; password?: string; userId: string }
        • Optional email?: string
        • Optional password?: string
        • userId: string

      Returns Promise<{ status: "OK" | "UNKNOWN_USER_ID_ERROR" | "EMAIL_ALREADY_EXISTS_ERROR" }>

User

User: { email: string; id: string; timeJoined: number }

Type declaration

  • email: string
  • id: string
  • timeJoined: number

Variables

Error

Error: typeof default = ...

Functions

createEmailVerificationToken

  • createEmailVerificationToken(userId: string): Promise<{ status: "OK"; token: string } | { status: "EMAIL_ALREADY_VERIFIED_ERROR" }>

createResetPasswordToken

  • createResetPasswordToken(userId: string): Promise<{ status: "OK"; token: string } | { status: "UNKNOWN_USER_ID_ERROR" }>

getUserByEmail

  • getUserByEmail(email: string): Promise<undefined | User>

getUserById

  • getUserById(userId: string): Promise<undefined | User>

init

  • init(config?: TypeInput): RecipeListFunction

isEmailVerified

  • isEmailVerified(userId: string): Promise<boolean>

resetPasswordUsingToken

  • resetPasswordUsingToken(token: string, newPassword: string): Promise<{ status: "OK" | "RESET_PASSWORD_INVALID_TOKEN_ERROR" }>

revokeEmailVerificationTokens

  • revokeEmailVerificationTokens(userId: string): Promise<{ status: "OK" }>

signIn

  • signIn(email: string, password: string): Promise<{ status: "OK"; user: User } | { status: "WRONG_CREDENTIALS_ERROR" }>

signUp

  • signUp(email: string, password: string): Promise<{ status: "OK"; user: User } | { status: "EMAIL_ALREADY_EXISTS_ERROR" }>

unverifyEmail

  • unverifyEmail(userId: string): Promise<{ status: "OK" }>

updateEmailOrPassword

  • updateEmailOrPassword(input: { email?: string; password?: string; userId: string }): Promise<{ status: "OK" | "EMAIL_ALREADY_EXISTS_ERROR" | "UNKNOWN_USER_ID_ERROR" }>
  • Parameters

    • input: { email?: string; password?: string; userId: string }
      • Optional email?: string
      • Optional password?: string
      • userId: string

    Returns Promise<{ status: "OK" | "EMAIL_ALREADY_EXISTS_ERROR" | "UNKNOWN_USER_ID_ERROR" }>

verifyEmailUsingToken

  • verifyEmailUsingToken(token: string): Promise<undefined | User | { status: "EMAIL_VERIFICATION_INVALID_TOKEN_ERROR" }>

Generated using TypeDoc