Register multiple lecturers in a single operation with institutional information. Requires admin privileges for batch lecturer operations.
POST
/api/v1/register/batch/lecturers
curl \
--request POST 'http://localhost:3500/api/v1/register/batch/lecturers' \
--header "Content-Type: application/json" \
--data '{"lecturers":[{"role":"LECTURER","email":"sarah.wilson@university.edu","phone":"+254712345686","lastname":"Wilson","password":"LecturerPass123!","firstname":"Dr. Sarah","instituteid":"institute-uuid-here","departmentInchargeId":"cs-department-uuid"},{"role":"LECTURER","email":"michael.brown@university.edu","phone":"+254712345687","lastname":"Brown","password":"LecturerPass456!","firstname":"Prof. Michael","instituteid":"institute-uuid-here"}]}'
Request example
Register multiple lecturers with institutional details
{
"lecturers": [
{
"role": "LECTURER",
"email": "sarah.wilson@university.edu",
"phone": "+254712345686",
"lastname": "Wilson",
"password": "LecturerPass123!",
"firstname": "Dr. Sarah",
"instituteid": "institute-uuid-here",
"departmentInchargeId": "cs-department-uuid"
},
{
"role": "LECTURER",
"email": "michael.brown@university.edu",
"phone": "+254712345687",
"lastname": "Brown",
"password": "LecturerPass456!",
"firstname": "Prof. Michael",
"instituteid": "institute-uuid-here"
}
]
}
Response examples (201)
{
"message": "Batch lecturer registration completed",
"results": [
{
"email": "sarah.wilson@university.edu",
"status": "success",
"userId": "lecturer-uuid-1"
},
{
"email": "michael.brown@university.edu",
"status": "success",
"userId": "lecturer-uuid-2"
}
],
"failureCount": 0,
"successCount": 2
}
Response examples (400)
{
"error": "Bad Request",
"message": "Duplicate emails found in batch",
"statusCode": 400
}
Response examples (401)
{
"error": "Unauthorized",
"message": "Unauthorized",
"statusCode": 401
}
Response examples (403)
{
"error": "Forbidden",
"message": "Insufficient permissions for batch lecturer operations",
"statusCode": 403
}