Base URL

http://localhost:8000/api/employee

Vendor Register Employee

POST /vendor-register Vendor JWT Required

Body

{ "emp_id": "EMP001", "fullname": "John Doe", "phone": "9876543210" }

Success

{ "success": true, "message": "Employee registered successfully", "data": { "_id": "...", "fullname": "John Doe" } }

Errors

400 All fields required 400 Employee already exists 400 Employee limit reached

Send OTP

POST /send-otp

Body

{ "phone": "9876543210" } OR { "email": "user@example.com" }

Success

{ "success": true, "message": "OTP sent successfully", "user_id": "employeeId" }

Errors

400 Email or phone required 404 Employee does not exist 502 OTP send failed

Employee Login

POST /login

Body

{ "phone": "9876543210", "otp": "123456" }

Success

{ "success": true, "message": "Employee logged in successfully", "accessToken": "...", "refreshToken": "...", "data": { "_id": "...", "fullname": "John Doe" } }

Errors

400 OTP required 400 Invalid OTP 400 OTP expired 403 Account deactivated 404 Employee not found

Refresh Token

POST /refresh-token

Body

{ "refreshToken": "token" }

Success

{ "success": true, "accessToken": "...", "refreshToken": "..." }

Logout

POST /logout Employee JWT Required

Success

{ "success": true, "message": "Employee Logout Successfully" }

Update Profile

POST /update Employee JWT Required

Body

{ "fullname": "John Doe", "email": "john@example.com", "phone": "9876543210", "address": "Street", "city": "City", "state": "State", "pinCode": "123456", "country": "India" }

Success

{ "success": true, "message": "Profile updated successfully" }

Keep Login

POST /keeplogin Employee JWT Required

Success

{ "success": true, "employee": { "_id": "...", "fullname": "John Doe" } }

All Vendor-Employees

GET /all-vendor-employees Vendor JWT Required

Headers Required

Authorization: Bearer accessToken

Request Example

GET /api/employee/all-vendor-employees

Success Response (200)

{ "success": true, "count": 2, "employees": [ { "_id": "6875b1d8a1f8e0b94b1a1122", "fullname": "Rahul Sharma", "email": "rahul@example.com", "phone": "919876543210", "vendor": { "_id": "6875b1d8a1f8e0b94b1a9999", "fullname": "Scrap Vendor", "email": "vendor@example.com" }, "createdAt": "2026-05-07T09:20:11.000Z" }, { "_id": "6875b1d8a1f8e0b94b1a1133", "fullname": "Amit Kumar", "email": "amit@example.com", "phone": "919812345678", "vendor": { "_id": "6875b1d8a1f8e0b94b1a9999", "fullname": "Scrap Vendor", "email": "vendor@example.com" }, "createdAt": "2026-05-07T10:45:11.000Z" } ] }

Error Responses

400 Bad Request { "success": false, "message": "Vendor ID is required" } 500 Internal Server Error { "success": false, "message": "Failed to fetch employees", "error": "Error message here" }
Note: Vendor ID is automatically extracted from the authenticated vendor token using middleware (verifyVendorJWT).