Skip to main content

User Management Guide

Complete guide to managing users in the Facebook Clone application.

User Registration​

Register New User​

POST /api/Authentication/register
{
"email": "[email protected]",
"password": "SecurePassword123!",
"fullName": "John Doe",
"username": "johndoe"
}

User Profiles​

Get User Profile​

GET /api/Authentication/me // current user
GET /api/Authentication/user/{userId} // user by ID

Update Profile​

POST /api/Authentication/update-profile
{
"fullName": "John Doe",
"bio": "Software developer",
"location": "San Francisco, CA",
"website": "https://johndoe.com"
}

Upload Profile Picture​

POST /api/Authentication/avatar
Content-Type: multipart/form-data

{
"image": file
}

Friend Management​

Send Friend Request​

POST /api/Friendship/send-request
Content-Type: application/json
{ "toUserId": "user-guid", "message": "Optional message" }

Accept Friend Request​

POST /api/Friendship/accept-request (body: { friendshipId })

Get Friends​

GET /api/Friendship/friends?page=1&pageSize=20

Get Friend Requests​

GET /api/Friendship/pending-requests

Search Users​

GET /api/friends/search?q=john&limit=20

User Settings​

Update Privacy Settings​

POST /api/Authentication/update-about-info (or settings endpoints)
{
"profileVisibility": "friends",
"postVisibility": "friends",
"messagePrivacy": "friends"
}

Notification Preferences​

PUT /api/Notification (or settings endpoints for notification preferences)
{
"emailNotifications": true,
"pushNotifications": true,
"friendRequestNotifications": true
}

Learn More​