Evo Voice

<back to all web services

NewUser

Creates a new login with the specified email address and password. Note: Any given email address can only exist once in the entire Evo Voice system.

Requires Authentication
Requires any of the roles:SystemAdministrator, Manager
The following routes are available for this service:
POST/users
import java.math.*
import java.util.*
import net.servicestack.client.*


/**
* Creates a new login with the specified email address and password. Note: Any given email address can only exist once in the entire Evo Voice system.
*/
@Api(Description="Creates a new login with the specified email address and password. Note: Any given email address can only exist once in the entire Evo Voice system.")
open class NewUser : IPost
{
    /**
    * The account ID you want to create this user under
    */
    @ApiMember(Description="The account ID you want to create this user under")
    var accountId:String? = null

    /**
    * The email address of the new user
    */
    @ApiMember(Description="The email address of the new user")
    var emailAddress:String? = null

    /**
    * The user's first name
    */
    @ApiMember(Description="The user's first name")
    var firstName:String? = null

    /**
    * The user's last name
    */
    @ApiMember(Description="The user's last name")
    var lastName:String? = null

    /**
    * The password for the new user
    */
    @ApiMember(Description="The password for the new user")
    var password:String? = null
}

open class UserInfo
{
    var id:String? = null
    var isAuthenticated:Boolean? = null
    var firstName:String? = null
    var lastName:String? = null
    var name:String? = null
    var avatarUrl:String? = null
    var emailAddress:String? = null
    var roles:ArrayList<String> = ArrayList<String>()
    var accountIds:ArrayList<String> = ArrayList<String>()
    var accountNames:ArrayList<String> = ArrayList<String>()
    var dashboardPermissions:ArrayList<DashboardPermissions> = ArrayList<DashboardPermissions>()
}

enum class DashboardPermissions
{
    ViewFiles,
    ViewNotifications,
    ViewSessions,
    ViewEndpoints,
    ViewReports,
    ViewCustomers,
    ViewFlows,
}

Kotlin NewUser DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /users HTTP/1.1 
Host: evovoice.io 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	accountId: String,
	emailAddress: String,
	firstName: String,
	lastName: String,
	password: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	id: String,
	isAuthenticated: False,
	firstName: String,
	lastName: String,
	name: String,
	avatarUrl: String,
	emailAddress: String,
	roles: 
	[
		String
	],
	accountIds: 
	[
		String
	],
	accountNames: 
	[
		String
	],
	dashboardPermissions: 
	[
		ViewFiles
	]
}