Requires any of the roles: | SystemAdministrator, Manager |
PATCH | /users/{userId} |
---|
"use strict";
/** @typedef {'ViewFiles'|'ViewNotifications'|'ViewSessions'|'ViewEndpoints'|'ViewReports'|'ViewCustomers'|'ViewFlows'} */
export var DashboardPermissions;
(function (DashboardPermissions) {
DashboardPermissions["ViewFiles"] = "ViewFiles"
DashboardPermissions["ViewNotifications"] = "ViewNotifications"
DashboardPermissions["ViewSessions"] = "ViewSessions"
DashboardPermissions["ViewEndpoints"] = "ViewEndpoints"
DashboardPermissions["ViewReports"] = "ViewReports"
DashboardPermissions["ViewCustomers"] = "ViewCustomers"
DashboardPermissions["ViewFlows"] = "ViewFlows"
})(DashboardPermissions || (DashboardPermissions = {}));
export class UserInfo {
/** @param {{id?:string,isAuthenticated?:boolean,firstName?:string,lastName?:string,name?:string,avatarUrl?:string,emailAddress?:string,roles?:string[],accountIds?:string[],accountNames?:string[],dashboardPermissions?:DashboardPermissions[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {boolean} */
isAuthenticated;
/** @type {string} */
firstName;
/** @type {string} */
lastName;
/** @type {string} */
name;
/** @type {string} */
avatarUrl;
/** @type {string} */
emailAddress;
/** @type {string[]} */
roles;
/** @type {string[]} */
accountIds;
/** @type {string[]} */
accountNames;
/** @type {DashboardPermissions[]} */
dashboardPermissions;
}
export class PatchUser {
/** @param {{accountIds?:string[],userId?:string,firstName?:string,lastName?:string,newPassword?:string,roles?:string[]}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string[]}
* @description The account IDs that this user has access to */
accountIds;
/**
* @type {string}
* @description The ID of the user */
userId;
/**
* @type {string}
* @description The user's first name */
firstName;
/**
* @type {string}
* @description The user's last name */
lastName;
/**
* @type {string}
* @description The new password for the user (leave null to not change) */
newPassword;
/**
* @type {string[]}
* @description The roles to associate with the login. Can only specify if system admin */
roles;
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=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: team.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 ] }