Express API Service
Welcome to the Express API Service. This comprehensive API provides endpoints for managing various aspects of a content management system.
Categories API
Manage content categories with full CRUD operations and pagination support.
/api/v1/categories
Sections API
Organize content into sections with hierarchical structure support.
/api/v1/sections
Articles API
Full article management with rich content, media attachments, and publishing workflow.
/api/v1/articles
Achievements API
Track and manage achievements with categorization and date tracking.
/api/v1/achievements
Media API
Unified media management supporting videos, documents, and images with Cloudinary integration.
/api/v1/media
Media Coverage API
Manage media coverage entries with outlet tracking, view statistics, and duration management.
/api/v1/media-coverage
Personal Info API
Singleton personal information management with education, experience, and achievement tracking.
/api/v1/personal-info
Events API
Event management with date scheduling, location tracking, and participant management.
/api/v1/events
Users API
User management with authentication, authorization, and profile management.
/api/v1/users
Categories API
Base URL: /api/v1/categories
Public Endpoints
-
GET
/api/v1/categories- Get all categories with pagination -
GET
/api/v1/categories/all- Get all categories without pagination -
GET
/api/v1/categories/:id- Get category by ID
Protected Endpoints
-
POST
/api/v1/categories- Create a new category [Admin/Dev Auth Required] -
PATCH
/api/v1/categories/:id- Update category [Admin/Dev Auth Required] -
DELETE
/api/v1/categories/:id- Delete category [Admin/Dev Auth Required] -
DELETE
/api/v1/categories/delete-all- Delete all categories [Dev Auth Required]
Sections API
Base URL: /api/v1/sections
Public Endpoints
-
GET
/api/v1/sections- Get all sections with pagination -
GET
/api/v1/sections/all- Get all sections without pagination -
GET
/api/v1/sections/:id- Get section by ID
Protected Endpoints
-
POST
/api/v1/sections- Create a new section [Admin/Dev Auth Required] -
PATCH
/api/v1/sections/:id- Update section [Admin/Dev Auth Required] -
DELETE
/api/v1/sections/:id- Delete section [Admin/Dev Auth Required] -
DELETE
/api/v1/sections/delete-all- Delete all sections [Dev Auth Required]
Articles API
Base URL: /api/v1/articles
Public Endpoints
-
GET
/api/v1/articles- Get all articles with pagination -
GET
/api/v1/articles/:id- Get article by ID -
GET
/api/v1/articles/featured- Get featured articles
Protected Endpoints
-
POST
/api/v1/articles- Create a new article [Auth Required] -
PATCH
/api/v1/articles/:id- Update article [Auth Required] -
DELETE
/api/v1/articles/:id- Delete article [Auth Required]
Achievements API
Base URL: /api/v1/achievements
Public Endpoints
-
GET
/api/v1/achievements- Get all achievements with pagination -
GET
/api/v1/achievements/:id- Get achievement by ID -
GET
/api/v1/achievements/category/:category- Get achievements by category
Protected Endpoints
-
POST
/api/v1/achievements- Create a new achievement [Auth Required] -
PATCH
/api/v1/achievements/:id- Update achievement [Auth Required] -
DELETE
/api/v1/achievements/:id- Delete achievement [Auth Required]
Media API
Base URL: /api/v1/media
Public Endpoints
-
GET
/api/v1/media- Get all media with pagination -
GET
/api/v1/media/videos- Get all videos -
GET
/api/v1/media/documents- Get all documents
Protected Endpoints
-
POST
/api/v1/media- Upload new media [Auth Required] -
PATCH
/api/v1/media/:id- Update media [Auth Required] -
DELETE
/api/v1/media/:id- Delete media [Auth Required]
Media Coverage API
Base URL: /api/v1/media-coverage
Public Endpoints
-
GET
/api/v1/media-coverage- Get all media coverage with pagination -
GET
/api/v1/media-coverage/:id- Get media coverage by ID -
GET
/api/v1/media-coverage/type/:type- Get media coverage by type
Protected Endpoints
-
POST
/api/v1/media-coverage- Create new media coverage [Auth Required] -
PATCH
/api/v1/media-coverage/:id- Update media coverage [Auth Required] -
DELETE
/api/v1/media-coverage/:id- Delete media coverage [Auth Required]
Personal Info API
Base URL: /api/v1/personal-info
Public Endpoints
-
GET
/api/v1/personal-info- Get personal information -
GET
/api/v1/personal-info/summary- Get personal info summary
Protected Endpoints (Singleton Pattern)
-
PATCH
/api/v1/personal-info- Update personal information [Auth Required] -
PUT
/api/v1/personal-info- Create or update personal information [Auth Required] -
POST
/api/v1/personal-info/education- Add education entry [Auth Required] -
POST
/api/v1/personal-info/experience- Add experience entry [Auth Required]
Events API
Base URL: /api/v1/events
Public Endpoints
-
GET
/api/v1/events- Get all events with pagination -
GET
/api/v1/events/:id- Get event by ID -
GET
/api/v1/events/upcoming- Get upcoming events
Protected Endpoints
-
POST
/api/v1/events- Create a new event [Auth Required] -
PATCH
/api/v1/events/:id- Update event [Auth Required] -
DELETE
/api/v1/events/:id- Delete event [Auth Required]
Users API
Base URL: /api/v1/users
Authentication Endpoints
-
POST
/api/v1/users/signup- User registration -
POST
/api/v1/users/login- User login -
POST
/api/v1/users/forgotPassword- Request password reset
Protected Endpoints
-
GET
/api/v1/users/me- Get current user profile [Auth Required] -
PATCH
/api/v1/users/updateMe- Update current user profile [Auth Required] -
DELETE
/api/v1/users/deleteMe- Deactivate current user account [Auth Required]
Admin Endpoints
-
GET
/api/v1/users- Get all users [Admin Auth Required] -
GET
/api/v1/users/:id- Get user by ID [Admin Auth Required]