Bulk user operation
const url = 'http://localhost:3000/api/v1/users/bulk';const options = { method: 'POST', headers: {'X-API-Key': '<X-API-Key>', 'Content-Type': 'application/json'}, body: '{"userIds":["uuid1","uuid2"],"action":"enable","roleId":"example","organizationId":"example","reason":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:3000/api/v1/users/bulk \ --header 'Content-Type: application/json' \ --header 'X-API-Key: <X-API-Key>' \ --data '{ "userIds": [ "uuid1", "uuid2" ], "action": "enable", "roleId": "example", "organizationId": "example", "reason": "example" }'Performs a bulk operation on multiple users. Supported actions: enable, disable, delete, reset_password, assign_role. Requires Super Admin privileges.
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ”object
User IDs to apply the action to
Example
[ "uuid1", "uuid2"]Action to perform
Role ID for assign_role action
Organization ID for assign_role action
Reason for the operation
Responses
Section titled “ Responses ”Bulk operation completed
object
Total number of users processed
Number of successful operations
Number of failed operations
Failed user IDs with error messages
object
Per-user outcome (FM-862). Populated for reset_password, where an undelivered reset is NOT counted as successful and carries emailSent=false.
object
Target user ID
Whether the operation fully succeeded for this user
For reset_password: whether the reset email was actually delivered. False means the target was NOT counted as successful.
Failure reason when success is false
Example generated
{ "processed": 1, "successful": 1, "failed": 1, "errors": { "additionalProperty": "example" }, "outcomes": [ { "userId": "example", "success": true, "emailSent": true, "error": "example" } ]}Invalid input data
Unauthorized
Forbidden - Super Admin required