================================================================================ INTEGRATED COMPANY MANAGEMENT SYSTEM - API ROUTES ================================================================================ Base URL: https://newcrm.inficomsolutions.in/api Authentication: Bearer Token (Laravel Sanctum) Include token in header: Authorization: Bearer {your_token} ================================================================================ PUBLIC ROUTES (No Authentication Required) ================================================================================ 1. POST /api/register Register a new user Body: { "name": "string", "email": "string", "password": "string", "password_confirmation": "string", "role_id": "integer (optional)" } 2. POST /api/login Login user Body: { "email": "string", "password": "string" } ================================================================================ PROTECTED ROUTES (Authentication Required) ================================================================================ 3. POST /api/logout Logout user Headers: Authorization: Bearer {token} 4. GET /api/me Get authenticated user information Headers: Authorization: Bearer {token} 5. PUT /api/profile Update user profile Headers: Authorization: Bearer {token} Body: { "name": "string (optional)", "email": "string (optional)", "password": "string (optional)", "password_confirmation": "string (required if password provided)" } ================================================================================ SUPER ADMIN ROUTES (Requires super_admin role) ================================================================================ 6. GET /api/admin/users List all users Headers: Authorization: Bearer {token} Access: Super Admin only ================================================================================ ADMIN ROUTES (Requires admin or super_admin role) ================================================================================ 7. GET /api/admin/dashboard Admin dashboard Headers: Authorization: Bearer {token} Access: Admin, Super Admin ================================================================================ EMPLOYEE ROUTES (Requires employee, admin, or super_admin role) ================================================================================ 8. GET /api/employee/dashboard Employee dashboard Headers: Authorization: Bearer {token} Access: Employee, Admin, Super Admin ================================================================================ USER ROLES ================================================================================ 1. Super Admin (super_admin) - Full system access - Can access all routes 2. Admin (admin) - Administrative access - Can manage users and content - Inherits employee permissions 3. Employee (employee) - Standard employee access - Limited to employee-specific routes ================================================================================ DEFAULT USERS (After running migrations and seeders) ================================================================================ Super Admin: Email: superadmin@inficomsolutions.in Password: SuperAdmin@123 Admin: Email: admin@inficomsolutions.in Password: Admin@123 Employee: Email: employee@inficomsolutions.in Password: Employee@123 ================================================================================ RESPONSE FORMATS ================================================================================ Success Response: { "success": true, "message": "Success message", "data": { ... } } Error Response: { "success": false, "message": "Error message", "errors": { ... } // For validation errors } HTTP Status Codes: - 200: Success - 201: Created - 401: Unauthorized - 403: Forbidden - 422: Validation Error - 500: Server Error ================================================================================ EXAMPLE REQUESTS ================================================================================ Register User: curl -X POST https://newcrm.inficomsolutions.in/api/register \ -H "Content-Type: application/json" \ -d '{ "name": "John Doe", "email": "john@example.com", "password": "password123", "password_confirmation": "password123" }' Login: curl -X POST https://newcrm.inficomsolutions.in/api/login \ -H "Content-Type: application/json" \ -d '{ "email": "superadmin@inficomsolutions.in", "password": "SuperAdmin@123" }' Get Authenticated User: curl -X GET https://newcrm.inficomsolutions.in/api/me \ -H "Authorization: Bearer YOUR_TOKEN_HERE" ================================================================================ SETUP COMMANDS ================================================================================ 1. Install dependencies: composer install 2. Generate application key: php artisan key:generate 3. Run migrations: php artisan migrate 4. Seed database: php artisan db:seed 5. Clear cache: php artisan config:clear php artisan cache:clear php artisan route:clear ================================================================================ For detailed documentation, see: - API_DOCUMENTATION.md (Complete API documentation) - API_ROUTES.md (Route structure and details) - SETUP_INSTRUCTIONS.md (Setup guide) ================================================================================