package
1.7.0
Repository: https://github.com/pilinux/gorest.git
Documentation: pkg.go.dev

# Functions

Activate2FA - activate 2FA upon validation - possible for accounts without 2FA-ON dependency: relational database, JWT, 2FA service Accepted JSON payload: `{"otp":"..."}`.
CreateBackup2FA - get new set of 2FA backup codes - 2FA must already be enabled for the user account dependency: relational database, JWT, 2FA service Accepted JSON payload: `{"password":"..."}`.
CreateUserAuth - register a new user account [POST]: /register dependency: relational database Accepted JSON payload: `{"email":"...", "password":"..."}`.
CreateVerificationEmail issues new verification code upon request dependency: email service, email verification service, Redis Accepted JSON payload: `{"email":"...", "password":"..."}`.
Deactivate2FA - disable 2FA for user account dependency: relational database, JWT, 2FA service Accepted JSON payload: `{"password":"..."}`.
GetUnverifiedEmail - if any email is yet to be verified, return it to the logged-in user When this email is verified, it will replace the existing active email of the user.
Login - issue new JWTs after user:pass verification [POST]: /login dependency: relational database, JWT Accepted JSON payload: `{"email":"...", "password":"..."}`.
Logout - - if 'AUTH_COOKIE_ACTIVATE=yes', delete tokens from client browser.
PasswordForgot sends secret code for resetting a forgotten password dependency: relational database, Redis, email service, password recovery service Accepted JSON payload: `{"email":"..."}`.
PasswordRecover resets a forgotten password dependency: relational database, Redis Accepted JSON payload: `{"secretCode":"...", "passNew":"...", "passRepeat":"...", "recoveryKey":"..."}` - `recoveryKey` is required if 2FA is enabled for the user account.
PasswordUpdate - change password in logged-in state dependency: relational database, JWT Accepted JSON payload: `{"password":"...", "passNew":"...", "passRepeat":"..."}`.
Refresh - issue new JWTs after validation dependency: JWT.
ResendVerificationCodeToModifyActiveEmail issues new verification code upon request dependency: email service, email verification service, Redis, relational database, JWT.
Setup2FA - get secret to activate 2FA - possible for accounts without 2FA-ON dependency: relational database, JWT, 2FA service Accepted JSON payload: `{"password":"..."}`.
UpdateEmail - update existing user email dependency: relational database, JWT Accepted JSON payload: `{"emailNew":"...", "password":"..."}`.
Validate2FA - issue new JWTs upon 2FA validation - required for accounts with 2FA-ON dependency: relational database, JWT, 2FA service Accepted JSON payload: `{"otp":"..."}`.
ValidateBackup2FA - issue new JWTs upon 2FA validation with backup code dependency: relational database, JWT, 2FA service Accepted JSON payload: `{"otp":"..."}`.
VerifyEmail - verify email address of a newly registered user account dependency: email verification service, Redis Accepted JSON payload: `{"verificationCode":"..."}`.
VerifyUpdatedEmail - verify request to modify user's email address dependency: email verification service, relational database, redis Accepted JSON payload: `{"verificationCode":"..."}`.