totask API Documentation
Base URL
https://totask.app/v1/
Authentication Routes
All authentication-related endpoints are prefixed with /auth
.
Register a User
Endpoint: /auth/register
Method: POST
Description: Registers a new user.
Request Body:
{
"name": "User's Name",
"email": "user@example.com",
"password": "userpassword"
}
Response:
- 201 Createdjson
{ "user": { "id": "user_id", "name": "User's Name", "email": "user@example.com", ... } }
Login with Email and Password
Endpoint: /auth/login
Method: POST
Description: Logs in a user using their email and password.
Request Body:
{
"email": "user@example.com",
"password": "userpassword"
}
Response:
- 200 OKjson
{ "user": "user_id", "tokens": { "access": { "token": "access_token", "expires": "expiry_time" }, "refresh": { "token": "refresh_token", "expires": "expiry_time" } } }
Logout
Endpoint: /auth/logout
Method: POST
Description: Logs out the current user and destroys their session.
Response:
- 204 No Content
Forgot Password
Endpoint: /auth/forgot-password
Method: POST
Description: Sends a password reset email to the user.
Request Body:
{
"email": "user@example.com"
}
Response:
- 204 No Content
Reset Password
Endpoint: /auth/reset-password
Method: POST
Description: Resets the user's password using a token.
Request Body:
{
"password": "newpassword"
}
Query Parameters:
token
: The reset password token received via email.
Response:
- 204 No Content
Change Password
Endpoint: /auth/change-password
Method: POST
Description: Changes the user's password.
Request Body:
{
"email": "user@example.com",
"password": "currentpassword",
"newPassword": "newpassword"
}
Response:
- 204 No Content
Send Verification Email
Endpoint: /auth/send-verification-email
Method: POST
Description: Sends a verification email to the user.
Response:
- 204 No Content
Verify Email
Endpoint: /auth/verify-email
Method: POST
Description: Verifies the user's email using a token.
Query Parameters:
token
: The email verification token.
Response:
- 204 No Content
Authentication Controller Methods
register
Registers a new user and creates a default workspace for them.
emailAndPasswordLogin
Logs in a user using their email and password, generates authentication tokens, and saves the session.
logout
Logs out the user, destroys the session, and clears the authentication cookie.
forgotPassword
Generates a password reset token and sends a password reset email to the user.
resetPassword
Resets the user's password using the provided reset token.
changePassword
Changes the user's password after verifying the current password.
sendVerificationEmail
Sends an email verification token to the user's email address.
verifyEmail
Verifies the user's email using the provided verification token and updates the session.