Requires any of the roles: | SystemAdministrator, Manager |
POST | /users |
---|
export class NodeParameterMap
{
[key:string] : NodeParameter;
public constructor(init?: Partial<NodeParameterMap>) { (Object as any).assign(this, init); }
}
export enum DashboardPermissions
{
ViewFiles = 'ViewFiles',
ViewNotifications = 'ViewNotifications',
ViewSessions = 'ViewSessions',
ViewEndpoints = 'ViewEndpoints',
ViewReports = 'ViewReports',
ViewCustomers = 'ViewCustomers',
ViewFlows = 'ViewFlows',
}
export class UserInfo
{
public id: string;
public isAuthenticated: boolean;
public firstName: string;
public lastName: string;
public name: string;
public avatarUrl: string;
public emailAddress: string;
public roles: string[];
public accountIds: string[];
public accountNames: string[];
public dashboardPermissions: DashboardPermissions[];
public constructor(init?: Partial<UserInfo>) { (Object as any).assign(this, init); }
}
/** @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. */
// @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.")
export class NewUser implements IPost
{
/** @description The account ID you want to create this user under */
// @ApiMember(Description="The account ID you want to create this user under")
public accountId: string;
/** @description The email address of the new user */
// @ApiMember(Description="The email address of the new user")
public emailAddress: string;
/** @description The user's first name */
// @ApiMember(Description="The user's first name")
public firstName: string;
/** @description The user's last name */
// @ApiMember(Description="The user's last name")
public lastName: string;
/** @description The password for the new user */
// @ApiMember(Description="The password for the new user")
public password: string;
public constructor(init?: Partial<NewUser>) { (Object as any).assign(this, init); }
}
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.
POST /users HTTP/1.1
Host: team.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 ] }