Project Management System REST API - Ready for Hostinger Deployment
/config/config.php/migrations//storage/ directory/api/auth/login
User login with email and password
{"email": "user@example.com", "password": "password123"}
/api/auth/logout
User logout (requires authentication)
/api/auth/csrf-token
Get CSRF token for form submissions
/api/auth/refresh
Refresh session and get new CSRF token
/api/projects
List all projects (with pagination and filtering)
?page=1&limit=20&client_id=123&summary=true
/api/projects
(Admin only)
Create a new project
{"name": "New Project", "client_id": 123, "description": "...",
"deadline": "2024-12-31", "budget": 5000}
/api/projects?id=123
Get specific project details
/api/projects?id=123
Update project details
/api/projects?id=123 (Admin only)
Delete a project
/api/milestones?project_id=123
List project milestones
/api/milestones
(Admin only)
Create milestone
/api/tasks?project_id=123
List project tasks (filterable by milestone, status, priority)
?project_id=123&milestone_id=456&status=in_progress&priority=high
/api/tasks
(Admin only)
Create task
/api/files?project_id=123
List project files
/api/files
Upload file (multipart/form-data)
file, project_id,
task_id (optional), description (optional)
/api/files?id=123&download=true
Download file
/api/files?id=123
Delete file (owner or admin only)
/api/messages?project_id=123
List project messages
?project_id=123&thread_id=456&mark_read=true
/api/messages
Send message
{"project_id": 123, "subject": "Hello", "content": "Message content",
"parent_id": 456}
All API responses follow a consistent JSON format:
{"success": true, "data": {...}}{"success": false, "error": "Error message"}{"success": false, "error": "Validation failed", "errors": {"field":
["Error message"]}}
/storage/uploads/ directory/migrations/🎉 Your Rabbhit System API is ready for deployment!
Update the configuration, run the migrations, and start managing projects efficiently.