API Explorer
Not Authenticated

Express API Service

Interactive API documentation with live testing. Explore endpoints, send requests, and view responses in real time.

REST API JWT Auth Cloudinary Images

Authentication

Login / Signup to get a JWT token for protected endpoints

Health Check

/health
GET /health Full health check (DB + Cloudinary) Public ▶
GET /health/ready Readiness probe (K8s / Docker) Public ▶
GET /health/live Liveness probe Public ▶

Landing

/api/v1/landing
GET /api/v1/landing Aggregated landing page data (testimonials, projects, clients, info) Public ▶

Users

/api/v1/users
POST /api/v1/users/signup Create new user account Public ▶
Rate limited: 10 requests per 15 minutes

Request Body

POST /api/v1/users/login Authenticate and get JWT Public ▶
Rate limited: 10 requests per 15 minutes

Request Body

POST /api/v1/users/logout Clear JWT cookie Public ▶
POST /api/v1/users/forgotPassword Send password reset email Public ▶
Rate limited: 10 requests per 15 minutes

Request Body

GET /api/v1/users/me Get current user profile Auth ▶
PATCH /api/v1/users/updateMe Update own profile (name, phone, photo) Auth ▶

Request Body (multipart/form-data)

PATCH /api/v1/users/updateMyPassword Update own password Auth ▶

Request Body

DELETE /api/v1/users/deleteMe Soft-delete own account Auth ▶
GET /api/v1/users Get all users (paginated) Admin ▶

Query Parameters

GET /api/v1/users/all Get all users without pagination Admin ▶
GET /api/v1/users/admins Get all admin users (paginated) Admin ▶
GET /api/v1/users/:id Get specific user by ID Admin ▶

Path Parameters

DELETE /api/v1/users/:id Delete user by ID Admin ▶

Path Parameters

POST /api/v1/users/admin Create admin user (Dev only) Dev ▶

Request Body

Views

/api/v1/views
GET /api/v1/views/stats/:blogId Get view statistics for a blog Admin ▶

Path Parameters

POST /api/v1/views/cleanup Delete old view records Admin ▶
POST /api/v1/views/reset Reset all view counts Admin ▶