Skip to main content

Users API

The Users API provides comprehensive user management, search, statistics, and administrative features for managing user data and accounts.
All endpoints use the base URL: https://jethings-backend.fly.dev (production) or http://localhost:3000 (development)

🔐 Authentication & Authorization

All Users API endpoints require authentication via Bearer token in the Authorization header.
Required Headers:
Role Requirements:
  • User endpoints: Any authenticated user
  • Admin endpoints: admin or super_admin role required
  • Super Admin endpoints: super_admin role required

👤 User Profile Management

Get Current User

Retrieve the current authenticated user’s profile information.
Success Response (200):

Update Current User

Update the current user’s profile information.
Request Body:
Users can only update their own profile fields. Admin-only fields (roles, isEmailVerified, isActive) are ignored.
Success Response (200):
Error Responses:
  • 409 Conflict: Email already in use
  • 409 Conflict: Phone number already in use

🔍 User Search & Management (Admin Only)

Get Users

Retrieve a paginated list of users with advanced filtering and search capabilities.
Query Parameters: Success Response (200):

Get User Statistics

Retrieve user statistics and analytics.
Success Response (200):

Get User by ID

Retrieve a specific user’s information by their ID.
Path Parameters:
  • id (string): User ID (UUID format)
Success Response (200):
Error Responses:
  • 404 Not Found: User not found

Update User (Admin Only)

Update any user’s information with admin privileges.
Request Body: Success Response (200):
Error Responses:
  • 404 Not Found: User not found
  • 409 Conflict: Email already in use
  • 409 Conflict: Phone number already in use

🔒 Account Management (Admin Only)

Deactivate User

Deactivate a user account (soft delete).
Success Response (200):
Error Responses:
  • 404 Not Found: User not found

Activate User

Reactivate a previously deactivated user account.
Success Response (200):
Error Responses:
  • 404 Not Found: User not found

Delete User

Permanently delete a user and all associated data.
This action cannot be undone. All user data will be permanently deleted.
Success Response (200):
Error Responses:
  • 404 Not Found: User not found

👑 Super Admin Management

Get All Admins

Retrieve all admin users (admin and super_admin roles).
Success Response (200):

Create Admin

Create a new admin user account.
Request Body: Success Response (200):
Error Responses:
  • 409 Conflict: Email already in use
  • 409 Conflict: Phone number already in use

Delete Admin

Delete an admin user account.
Success Response (200):
Error Responses:
  • 404 Not Found: Admin not found
  • 400 Bad Request: User is not an admin
  • 400 Bad Request: Cannot delete super admin

Block Admin

Block an admin user account.
Success Response (200):
Error Responses:
  • 404 Not Found: Admin not found
  • 400 Bad Request: User is not an admin
  • 400 Bad Request: Cannot block super admin

Unblock Admin

Unblock a previously blocked admin user account.
Success Response (200):
Error Responses:
  • 404 Not Found: Admin not found
  • 400 Bad Request: User is not an admin

🔧 Error Handling

Common Error Codes

Error Response Format

Handling Errors in Your Code


🚀 Frontend Integration Examples

TypeScript Service Class

React Hook Example


🚀 Next Steps

Now that you understand the Users API, explore the Authentication API for authentication features, or check out our Flutter Integration Guide for mobile development.

Authentication API

Sign up, sign in, and token management

Flutter Integration

Complete Flutter implementation guide