ProfileController API Documentation
Introduction
The ProfileController class handles user profile-related operations such as retrieving profile data, updating user information, changing passwords, logging out, and deleting accounts.
API Endpoints
1. Get User Profile
Endpoint:
GET /api/profile
Description:
Fetches the authenticated user's profile data.
Request Example:
{}
Response Example (Success):
{
"status": true,
"message": "Profile Data Load",
"data": {
"id": 1,
"name": "John Doe",
"email": "user@example.com",
"phone": "1234567890"
}
}
Response Example (Failure):
{
"status": false,
"message": "user not found"
}
2. Update User Profile
Endpoint:
POST /api/profile
Description:
Updates the user's profile data (name, email, phone, etc.).
Request Example:
{
"name": "John Updated",
"email": "john.updated@example.com",
"phone": "9876543210"
}
Response Example (Success):
{
"status": true,
"message": "Profile Data Updated",
"data": {
"id": 1,
"name": "John Updated",
"email": "john.updated@example.com",
"phone": "9876543210"
}
}
Response Example (Failure):
{
"status": false,
"message": "user not found"
}
3. Update User Password
Endpoint:
POST /api/profile/password
Description:
Updates the user's password.
Request Example:
{
"password": "newpassword123",
"password_confirmation": "newpassword123"
}
Response Example (Success):
{
"status": true,
"message": "Password Updated"
}
Response Example (Failure):
{
"status": false,
"message": "user not found"
}
4. Logout User
Endpoint:
POST /api/profile/logout
Description:
Logs out the user by destroying their token and session.
Request Example:
{}
Response Example (Success):
{
"status": true,
"message": "Logout Success"
}
5. Close Account
Endpoint:
DELETE /api/profile/destroy
Description:
Closes the user's account and deletes their data.
Request Example:
{}
Response Example (Success):
{
"status": true,
"message": "Account Has Been Deleted"
}
Response Example (Failure):
{
"status": false,
"message": "user not found"
}
Summary of Methods
- profile() - Retrieves the authenticated user's profile data.
- update() - Updates the user's profile data (name, email, phone, etc.).
- password() - Changes the user's password.
- logout() - Logs out the user and destroys the session.
- destroy() - Deletes the user's account and data.