Bulk user creation for load testing?
Asked by Jon Kokko:

In Confluence 5.9x, is there way to (non-manually) create a bulk list of users for load testing? Can this be done directly through in database and/or the API?


Answers:
author: Peter T
body: Hi Jon,

there are some options. First unfortunately REST service for that does not exist. here is the latest ref. guide.  
<https://docs.atlassian.com/confluence/REST/latest/>

Luckily there are two other options

1. DB - You can create a user directly in the database:  

   Let me share an example of how to create one(*new administrator user*).

   ```
   insert into cwd_user(id, user_name, lower_user_name, active, created_date, updated_date, first_name, lower_first_name, last_name, lower_last_name, display_name, lower_display_name, email_address, lower_email_address, directory_id, credential) values (1212121, 'admin', 'admin', 'T', '2009-11-26 17:42:08', '2009-11-26 17:42:08', 'A. D.', 'a. d.', 'Ministrator', 'ministrator', 'A. D. Ministrator', 'a. d. ministrator', 'admin@example.com', 'admin@example.com', (select id from cwd_directory where directory_name='Confluence Internal Directory'), 'x61Ey612Kl2gpFL56FT9weDnpSo4AV8j8+qx2AuTHdRyY036xxzTTrw10Wq3+4qQyB+XURPWx1ONxp3Y3pB37A==');  insert into user_mapping values ('2c9681954172cf560000000000000001', 'admin', 'admin');
   ```

   ```
   insert into cwd_membership (id, parent_id, child_user_id) values (888888, (select id from cwd_group where group_name='confluence-users' and directory_id=(select id from cwd_directory where directory_name='Confluence Internal Directory')), 1212121);insert into cwd_membership (id, parent_id, child_user_id) values (999999, (select id from cwd_group where group_name='confluence-administrators' and directory_id=(select id from cwd_directory where directory_name='Confluence Internal Directory')), 1212121);
   ```

2. RPC  
   This is an older API but should still work. It is used somewhat similarly to the REST API, but instead of giving it an HTTP verb (GET, POST, UPDATE, DELETE), you always send it a POST (and make sure that the content type is "application/json"). Here is some more information about what you can do with user administration:

   <https://developer.atlassian.com/confdev/confluence-rest-api/confluence-xml-rpc-and-soap-apis/remote-confluence-methods#RemoteConfluenceMethods-UserManagement>

   <br />


author: Boris Georgiev [Appfire]
body: Another easy option is to add external user directory to Confluence. All the supported external user directories support simple way for bulk creating users.

Also there are some services like this one - <http://www.forumsys.com/en/tutorials/integration-how-to/ldap/online-ldap-test-server/> which you might use for the sake of testing

<https://confluence.atlassian.com/doc/configuring-user-directories-229838212.html>


author: Midori
body: Using **[Atlassian Populator](https://chrome.google.com/webstore/detail/atlassian-populator/dhlljlojpmdpcfjocjilidojdgfoiajn?hl=en) should be the easiest** option.

This is a relatively new Chrome extension built by Atlassian, that enables you to populate every sort of data to Atlassian applications. Give this a try.

<https://www.youtube.com/watch?v=4gLNANxjsMk>


author: Bob Swift (personal)
body: [addUser](https://bobswift.atlassian.net/wiki/display/CSOAP/Reference#Reference-addUser) from [Confluence Command Line Interface (CLI)](https://bobswift.atlassian.net/wiki/display/CSOAP)


Tags: load-test