You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

4.2 KiB

Account API Error Documentation

This document lists the potential errors returned by the registration and account endpoints in the account app, including the error messages and the reasons they occur.

Common Error Format

All errors follow a standardized JSON structure defined in the project's custom exception handler:

{
    "status": "error",
    "code": "validation_error",
    "status_code": 400,
    "message": "There were validation errors.",
    "errors": [
        {
            "field": "email",
            "message": "This email is already registered."
        }
    ]
}

1. Registration Endpoints

Endpoints: POST /register/, POST /web/register/

Error Message Field Reason
This email is already registered. email The email address is already associated with an existing account.
Enter a valid email address. email The provided email format is incorrect (e.g., missing @ or domain).
This field is required. Multiple A mandatory field (like email, fullname, or password for web) was missing from the request.
This password is too short... password (Web only) The password does not meet Django's security requirements (length, complexity).

2. Verification Endpoint

Endpoint: POST /verify/

Error Message Field Reason
Verification data not found or expired. code There is no active registration session in Redis for this email. Usually occurs if the user waits too long or tries to verify an email they didn't just register.
The verification code has expired. code The OTP code's Time-To-Live (TTL) has passed (usually 5-10 minutes).
code notfound code The provided OTP code is incorrect.
enter code numeric code The provided code contains non-numeric characters.

3. Authentication & Login

Endpoint: POST /login/

Error Message Field Reason
user not exists with this email email No user account was found with the provided email address.
password is incorrect password The email is correct, but the password does not match the record in the database.
Unable to log in with provided credentials. non_field_errors Catch-all for failed authentication attempts.

4. Guest Account Endpoints

Endpoints: POST /guest/, POST /web/guest/

Error Message Field Reason
Device ID is required for guest users. device_id (Mobile) The unique device identifier was not sent in the request.
Device ID is required for web guest users. device_id (Web) Internal error where the identifier generation failed.

5. Token Exchange (Mobile Auth)

Endpoint: POST /exchange-token/

Error Message Status Code Reason
توکن ارسال نشده است 400 The temp_token was missing from the request body.
توکن نامعتبر یا منقضی شده است 404 The temporary token from the login redirect has expired or is invalid.
توکن نامعتبر است 400 The token exists but is missing required session data (user_id).
کاربر یافت نشد 404 The user account associated with the token has been deleted.

6. Profile & Password Management

Endpoints: GET/PUT /profile/update/, POST /reset/

Error Message Status Code Reason
Authentication credentials were not provided. 401 Missing or incorrect Authorization: Token <key> header.
Invalid token. 401 The provided token has expired or belongs to a deleted user.
This password is too common. 400 Password reset failed because the new password is too simple.
You do not have permission... 403 The user's account has been deactivated (inactive).

7. Account Deletion

Endpoint: DELETE /profile/delete/

Error Message Status Code Reason
Unable to log in with provided credentials. 204 Attempted to delete the protected primary administrator account (admin@gmail.com).
User does not exist. 404 The system could not find the user object to perform the soft-delete.