<p>What you could try to do, though I don't know if this will work, is use the same form that craft CP uses in the backend. Using Google f12 I managed to find this: </p>

<pre><code>&lt;form id="userform" class="pane" method="post" accept-charset="UTF-8" autocomplete="off" data-saveshortcut="" data-saveshortcut-redirect="users/{id}"&gt;
&lt;input type="hidden" name="action" value="users/saveUser"&gt;
&lt;input type="hidden" name="redirect" value="users"&gt;
{{ getCsrfInput() }}
//Forms you want user to input
&lt;input type="submit" class="btn submit" value="Save"&gt;
&lt;/form&gt;
</code></pre>

<p>The above form is the same form that Craft uses natively to register users so it might work. Obviously, your admins will require the privileges to register users.</p>

CC BY-SA 3.0
2017-11-27T16:35:41.390Z
Good thought. I'll give that a try, thanks.
Philip Jones
CC BY-SA 3.0
2017-11-24T13:04:35.677Z
2017-11-24T13:04:35.677Z
Gįëł Tėttëłæår
<p>Definitely doable with a custom <a href="https://pluginfactory.io" rel="nofollow noreferrer">plugin</a>.</p>

<p>Your front-end form could be similar to the standard front-end user registration form (<a href="https://craftcms.com/docs/templating/user-registration-form" rel="nofollow noreferrer">https://craftcms.com/docs/templating/user-registration-form</a>), but instead you'd point the form action to your plugin's controller.</p>

<p>From that point, you can do pretty much whatever you want with the POST'd data using Craft's service layer API.  i.e. check existing user's permissions, save user, etc.</p>

CC BY-SA 3.0
2017-05-05T21:15:12.907Z
Okay, bear with me. If a non-logged-in user can submit a form to create a new user and all the associated actions that occur as a result, why can't that exact same process be done by a logged-in user (assuming they have the appropriate permissions)?
Philip Jones
CC BY-SA 3.0
2017-05-05T21:32:52.733Z
They can? I feel like maybe I'm not understanding the problem.
Brad Bell
CC BY-SA 3.0
2017-05-05T22:27:56.623Z
Provided I have turned on "Allow public registration?" in user settings, I can create a user registration form using the example provided in the Craft docs. Using this form, a user who is not logged in can register for an account. Once that form is submitted, the user is sent an activation email. Once they click the link in the activation email, their account is activated and they are automatically assigned to the group specified in the "Default User Group" dropdown in user settings.
Philip Jones
CC BY-SA 3.0
2017-05-05T22:29:54.573Z
I just want to be able to do the same thing, but instead of it being initiated by a not-logged-in user, I want it to be initiated by an admin who has "Register users" permissions.
Philip Jones
CC BY-SA 3.0
2017-05-07T23:36:22.280Z
Right... so your plugin would need to override whatever steps/controller actions of the user registration workflow as necessary. In your case, specifically `actionVerifyEmail`.
Brad Bell
CC BY-SA 3.0
2017-05-08T17:32:27.190Z
I guess I don't understand what it is I need to override. I want `actionVerifyEmail` to fire, along with any other actions that occur when a new user is signed up from the front end.
Philip Jones
CC BY-SA 3.0
2017-05-05T21:06:32.007Z
2017-05-05T21:06:32.007Z
Brad Bell
<p>Is there a way to create a front-end form that would allow a user with appropriate privileges (Register users) to register new users?</p>

<users><admin><frontend-form>
Form for admins to register users from the front end
# Form for admins to register users from the front end

(Asked by: username_0 on 2017-05-04)

Is there a way to create a front-end form that would allow a user with appropriate privileges (Register users) to register new users?

**Tags:** users, admin, frontend-form


---

## 2 answers

### Answer by username_1 on 2017-11-24. Score: 3

What you could try to do, though I don't know if this will work, is use the same form that craft CP uses in the backend. Using Google f12 I managed to find this: 



{{ getCsrfInput() }}
//Forms you want user to input



The above form is the same form that Craft uses natively to register users so it might work. Obviously, your admins will require the privileges to register users.

> **Comments:**
> **username_0**: Good thought. I'll give that a try, thanks.  

---

### Answer by username_2 on 2017-05-05. Score: 1

Definitely doable with a custom [plugin](https://pluginfactory.io).

Your front-end form could be similar to the standard front-end user registration form (<https://craftcms.com/docs/templating/user-registration-form>), but instead you'd point the form action to your plugin's controller.

From that point, you can do pretty much whatever you want with the POST'd data using Craft's service layer API. i.e. check existing user's permissions, save user, etc.

> **Comments:**
> **username_0**: Okay, bear with me. If a non-logged-in user can submit a form to create a new user and all the associated actions that occur as a result, why can't that exact same process be done by a logged-in user (assuming they have the appropriate permissions)?  
> **username_2**: They can? I feel like maybe I'm not understanding the problem.  
> **username_0**: Provided I have turned on "Allow public registration?" in user settings, I can create a user registration form using the example provided in the Craft docs. Using this form, a user who is not logged in can register for an account. Once that form is submitted, the user is sent an activation email. Once they click the link in the activation email, their account is activated and they are automatically assigned to the group specified in the "Default User Group" dropdown in user settings.  
> **username_0**: I just want to be able to do the same thing, but instead of it being initiated by a not-logged-in user, I want it to be initiated by an admin who has "Register users" permissions.  
> **username_2**: Right... so your plugin would need to override whatever steps/controller actions of the user registration workflow as necessary. In your case, specifically `actionVerifyEmail`.  
> **username_0**: I guess I don't understand what it is I need to override. I want `actionVerifyEmail` to fire, along with any other actions that occur when a new user is signed up from the front end.  

---

