Requires any of the roles: | SystemAdministrator, Manager |
POST | /users |
---|
"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 NewUser {
/** @param {{accountId?:string,emailAddress?:string,firstName?:string,lastName?:string,password?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The account ID you want to create this user under */
accountId;
/**
* @type {string}
* @description The email address of the new user */
emailAddress;
/**
* @type {string}
* @description The user's first name */
firstName;
/**
* @type {string}
* @description The user's last name */
lastName;
/**
* @type {string}
* @description The password for the new user */
password;
}
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 ] }