Evo Voice

<back to all web services

PatchUser

Update the specified login

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


/**
* Update the specified login
*/
@Api(Description="Update the specified login")
open class PatchUser : IPatch
{
    /**
    * The account IDs that this user has access to
    */
    @ApiMember(Description="The account IDs that this user has access to")
    var accountIds:ArrayList<String> = ArrayList<String>()

    /**
    * The ID of the user
    */
    @ApiMember(Description="The ID of the user")
    var userId: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 new password for the user (leave null to not change)
    */
    @ApiMember(Description="The new password for the user (leave null to not change)")
    var newPassword:String? = null

    /**
    * The roles to associate with the login. Can only specify if system admin
    */
    @ApiMember(Description="The roles to associate with the login. Can only specify if system admin")
    var roles:ArrayList<String> = ArrayList<String>()
}

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 PatchUser 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.

PATCH /users/{userId} HTTP/1.1 
Host: evovoice.io 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	accountIds: 
	[
		String
	],
	userId: String,
	firstName: String,
	lastName: String,
	newPassword: String,
	roles: 
	[
		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
	]
}