def post(self, data=None):
        """
        .. http:post:: /users

           Creates a new user

           **Example request with ID**:

           .. sourcecode:: http

              POST /users HTTP/1.1
              Host: example.com
              Accept: application/json, text/javascript
              Content-Type: application/json;charset=UTF-8

              {
                 "username": "user3",
                 "email": "user3@example.com",
                 "active": true,
                 "roles": [
                    {"id": 1}
                 ]
              }

           **Example request with name**:

           .. sourcecode:: http

              POST /users HTTP/1.1
              Host: example.com
              Accept: application/json, text/javascript
              Content-Type: application/json;charset=UTF-8

              {
                 "username": "user3",
                 "email": "user3@example.com",
                 "active": true,
                 "roles": [
                    {"name": "myRole"}
                 ]
              }

           **Example response**:

           .. sourcecode:: http

              HTTP/1.1 200 OK
              Vary: Accept
              Content-Type: text/javascript

              {
                  "id": 3,
                  "active": True,
                  "email": "user3@example.com",
                  "username": "user3",
                  "profileImage": null
              }

           :arg username: username for new user
           :arg email: email address for new user
           :arg password: password for new user
           :arg active: boolean, if the user is currently active
           :arg roles: list, roles that the user should be apart of
           :reqheader Authorization: OAuth token to authenticate
           :statuscode 200: no error
        """
        return service.create(
            data["username"],
            data["password"],
            data["email"],
            data["active"],
            None,
            data["roles"],
        )

        .. http:post:: /users

           Creates a new user

           **Example request with ID**:

           .. sourcecode:: http

              POST /users HTTP/1.1
              Host: example.com
              Accept: application/json, text/javascript
              Content-Type: application/json;charset=UTF-8

              {
                 "username": "user3",
                 "email": "user3@example.com",
                 "active": true,
                 "roles": [
                    {"id": 1}
                 ]
              }

           **Example request with name**:

           .. sourcecode:: http

              POST /users HTTP/1.1
              Host: example.com
              Accept: application/json, text/javascript
              Content-Type: application/json;charset=UTF-8

              {
                 "username": "user3",
                 "email": "user3@example.com",
                 "active": true,
                 "roles": [
                    {"name": "myRole"}
                 ]
              }

           **Example response**:

           .. sourcecode:: http

              HTTP/1.1 200 OK
              Vary: Accept
              Content-Type: text/javascript

              {
                  "id": 3,
                  "active": True,
                  "email": "user3@example.com",
                  "username": "user3",
                  "profileImage": null
              }

           :arg username: username for new user
           :arg email: email address for new user
           :arg password: password for new user
           :arg active: boolean, if the user is currently active
           :arg roles: list, roles that the user should be apart of
           :reqheader Authorization: OAuth token to authenticate
           :statuscode 200: no error
        
lemur/users/views.py