@docbrasil/api-systemmanager 1.1.76 → 1.1.78
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/admin/list.js +214 -0
- package/api/admin/user.js +363 -1
- package/dist/bundle.cjs +577 -1
- package/dist/bundle.mjs +1 -1
- package/doc/api.md +407 -0
- package/docs/AdminLists.html +1591 -49
- package/docs/AdminUser.html +3164 -292
- package/docs/admin_list.js.html +214 -0
- package/docs/admin_user.js.html +363 -1
- package/package.json +1 -1
package/dist/bundle.cjs
CHANGED
|
@@ -13883,6 +13883,220 @@ class AdminLists {
|
|
|
13883
13883
|
throw ex;
|
|
13884
13884
|
}
|
|
13885
13885
|
}
|
|
13886
|
+
|
|
13887
|
+
/**
|
|
13888
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
13889
|
+
* @description Filter organization lists by name
|
|
13890
|
+
* @param {object} params Parameters
|
|
13891
|
+
* @param {string} params.orgId Organization ID (required)
|
|
13892
|
+
* @param {array} [params.names=[]] Array of list names to filter (empty = all)
|
|
13893
|
+
* @param {string} session JWT session token
|
|
13894
|
+
* @return {Promise<array>} Array of matching org lists sorted by name
|
|
13895
|
+
* @public
|
|
13896
|
+
* @async
|
|
13897
|
+
* @example
|
|
13898
|
+
*
|
|
13899
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
13900
|
+
* const api = new API();
|
|
13901
|
+
* const params = { orgId: '5edd11c46b6ce9729c2c297c', names: ['Tags', 'Categorias'] };
|
|
13902
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
13903
|
+
* const lists = await api.admin.list.filterByName(params, session);
|
|
13904
|
+
*/
|
|
13905
|
+
async filterByName(params = {}, session) {
|
|
13906
|
+
const self = this;
|
|
13907
|
+
|
|
13908
|
+
try {
|
|
13909
|
+
Joi__default["default"].assert(params, Joi__default["default"].object().required());
|
|
13910
|
+
Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
|
|
13911
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required());
|
|
13912
|
+
|
|
13913
|
+
const { orgId, names = [] } = params;
|
|
13914
|
+
const payload = { names };
|
|
13915
|
+
|
|
13916
|
+
const apiCall = self._client.post(
|
|
13917
|
+
`/admin/organizations/${orgId}/orgtags/filter`,
|
|
13918
|
+
payload,
|
|
13919
|
+
self._setHeader(session)
|
|
13920
|
+
);
|
|
13921
|
+
|
|
13922
|
+
return self._returnData(await apiCall);
|
|
13923
|
+
} catch (ex) {
|
|
13924
|
+
throw ex;
|
|
13925
|
+
}
|
|
13926
|
+
}
|
|
13927
|
+
|
|
13928
|
+
/**
|
|
13929
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
13930
|
+
* @description Create a new organization list
|
|
13931
|
+
* @param {object} params Parameters
|
|
13932
|
+
* @param {string} params.orgId Organization ID (required)
|
|
13933
|
+
* @param {string} params.name List name (required)
|
|
13934
|
+
* @param {array} [params.list=[]] Initial list items
|
|
13935
|
+
* @param {string} session JWT session token
|
|
13936
|
+
* @return {Promise<object>} Created list document
|
|
13937
|
+
* @public
|
|
13938
|
+
* @async
|
|
13939
|
+
* @example
|
|
13940
|
+
*
|
|
13941
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
13942
|
+
* const api = new API();
|
|
13943
|
+
* const params = { orgId: '5edd11c46b6ce9729c2c297c', name: 'My List', list: [] };
|
|
13944
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
13945
|
+
* const list = await api.admin.list.create(params, session);
|
|
13946
|
+
*/
|
|
13947
|
+
async create(params = {}, session) {
|
|
13948
|
+
const self = this;
|
|
13949
|
+
|
|
13950
|
+
try {
|
|
13951
|
+
Joi__default["default"].assert(params, Joi__default["default"].object().required());
|
|
13952
|
+
Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
|
|
13953
|
+
Joi__default["default"].assert(params.name, Joi__default["default"].string().required());
|
|
13954
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required());
|
|
13955
|
+
|
|
13956
|
+
const { orgId, name, list = [] } = params;
|
|
13957
|
+
const payload = { orgId, name, list };
|
|
13958
|
+
|
|
13959
|
+
const apiCall = self._client.put(
|
|
13960
|
+
`/admin/organizations/${orgId}/orgtags`,
|
|
13961
|
+
payload,
|
|
13962
|
+
self._setHeader(session)
|
|
13963
|
+
);
|
|
13964
|
+
|
|
13965
|
+
return self._returnData(await apiCall);
|
|
13966
|
+
} catch (ex) {
|
|
13967
|
+
throw ex;
|
|
13968
|
+
}
|
|
13969
|
+
}
|
|
13970
|
+
|
|
13971
|
+
/**
|
|
13972
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
13973
|
+
* @description Update an organization list
|
|
13974
|
+
* @param {object} params Parameters
|
|
13975
|
+
* @param {string} params.orgId Organization ID (required)
|
|
13976
|
+
* @param {string} params.id List ID (required)
|
|
13977
|
+
* @param {object} params.data Fields to update (name, list, etc.)
|
|
13978
|
+
* @param {string} session JWT session token
|
|
13979
|
+
* @return {Promise<object>} Updated list document
|
|
13980
|
+
* @public
|
|
13981
|
+
* @async
|
|
13982
|
+
* @example
|
|
13983
|
+
*
|
|
13984
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
13985
|
+
* const api = new API();
|
|
13986
|
+
* const params = { orgId: '5edd11c46b6ce9729c2c297c', id: '55e4a3bd6be6b45210833fae', data: { name: 'Renamed' } };
|
|
13987
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
13988
|
+
* const list = await api.admin.list.update(params, session);
|
|
13989
|
+
*/
|
|
13990
|
+
async update(params = {}, session) {
|
|
13991
|
+
const self = this;
|
|
13992
|
+
|
|
13993
|
+
try {
|
|
13994
|
+
Joi__default["default"].assert(params, Joi__default["default"].object().required());
|
|
13995
|
+
Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
|
|
13996
|
+
Joi__default["default"].assert(params.id, Joi__default["default"].string().required());
|
|
13997
|
+
Joi__default["default"].assert(params.data, Joi__default["default"].object().required());
|
|
13998
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required());
|
|
13999
|
+
|
|
14000
|
+
const { orgId, id, data } = params;
|
|
14001
|
+
|
|
14002
|
+
const apiCall = self._client.put(
|
|
14003
|
+
`/admin/organizations/${orgId}/orgtags/${id}`,
|
|
14004
|
+
data,
|
|
14005
|
+
self._setHeader(session)
|
|
14006
|
+
);
|
|
14007
|
+
|
|
14008
|
+
return self._returnData(await apiCall);
|
|
14009
|
+
} catch (ex) {
|
|
14010
|
+
throw ex;
|
|
14011
|
+
}
|
|
14012
|
+
}
|
|
14013
|
+
|
|
14014
|
+
/**
|
|
14015
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14016
|
+
* @description Remove an organization list
|
|
14017
|
+
* @param {object} params Parameters
|
|
14018
|
+
* @param {string} params.orgId Organization ID (required)
|
|
14019
|
+
* @param {string} params.id List ID to remove (required)
|
|
14020
|
+
* @param {string} session JWT session token
|
|
14021
|
+
* @return {Promise<object>} Removal confirmation
|
|
14022
|
+
* @public
|
|
14023
|
+
* @async
|
|
14024
|
+
* @example
|
|
14025
|
+
*
|
|
14026
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
14027
|
+
* const api = new API();
|
|
14028
|
+
* const params = { orgId: '5edd11c46b6ce9729c2c297c', id: '55e4a3bd6be6b45210833fae' };
|
|
14029
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
14030
|
+
* await api.admin.list.remove(params, session);
|
|
14031
|
+
*/
|
|
14032
|
+
async remove(params = {}, session) {
|
|
14033
|
+
const self = this;
|
|
14034
|
+
|
|
14035
|
+
try {
|
|
14036
|
+
Joi__default["default"].assert(params, Joi__default["default"].object().required());
|
|
14037
|
+
Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
|
|
14038
|
+
Joi__default["default"].assert(params.id, Joi__default["default"].string().required());
|
|
14039
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required());
|
|
14040
|
+
|
|
14041
|
+
const { orgId, id } = params;
|
|
14042
|
+
|
|
14043
|
+
const apiCall = self._client.delete(
|
|
14044
|
+
`/admin/organizations/${orgId}/orgtags/${id}`,
|
|
14045
|
+
self._setHeader(session)
|
|
14046
|
+
);
|
|
14047
|
+
|
|
14048
|
+
return self._returnData(await apiCall);
|
|
14049
|
+
} catch (ex) {
|
|
14050
|
+
throw ex;
|
|
14051
|
+
}
|
|
14052
|
+
}
|
|
14053
|
+
|
|
14054
|
+
/**
|
|
14055
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14056
|
+
* @description Update list items of an organization list
|
|
14057
|
+
* @param {object} params Parameters
|
|
14058
|
+
* @param {string} params.orgId Organization ID (required)
|
|
14059
|
+
* @param {string} params.id List ID (required)
|
|
14060
|
+
* @param {array} params.list Updated list items array (required)
|
|
14061
|
+
* @param {string} session JWT session token
|
|
14062
|
+
* @return {Promise<object>} Updated list document
|
|
14063
|
+
* @public
|
|
14064
|
+
* @async
|
|
14065
|
+
* @example
|
|
14066
|
+
*
|
|
14067
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
14068
|
+
* const api = new API();
|
|
14069
|
+
* const params = {
|
|
14070
|
+
* orgId: '5edd11c46b6ce9729c2c297c',
|
|
14071
|
+
* id: '55e4a3bd6be6b45210833fae',
|
|
14072
|
+
* list: [{ _id: '1', value: 'Item 1', filter: '', order: 0 }]
|
|
14073
|
+
* };
|
|
14074
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
14075
|
+
* const list = await api.admin.list.updateListItems(params, session);
|
|
14076
|
+
*/
|
|
14077
|
+
async updateListItems(params = {}, session) {
|
|
14078
|
+
const self = this;
|
|
14079
|
+
|
|
14080
|
+
try {
|
|
14081
|
+
Joi__default["default"].assert(params, Joi__default["default"].object().required());
|
|
14082
|
+
Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required());
|
|
14083
|
+
Joi__default["default"].assert(params.id, Joi__default["default"].string().required());
|
|
14084
|
+
Joi__default["default"].assert(params.list, Joi__default["default"].array().required());
|
|
14085
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required());
|
|
14086
|
+
|
|
14087
|
+
const { orgId, id, list } = params;
|
|
14088
|
+
|
|
14089
|
+
const apiCall = self._client.put(
|
|
14090
|
+
`/admin/organizations/${orgId}/orgtags/${id}`,
|
|
14091
|
+
{ list },
|
|
14092
|
+
self._setHeader(session)
|
|
14093
|
+
);
|
|
14094
|
+
|
|
14095
|
+
return self._returnData(await apiCall);
|
|
14096
|
+
} catch (ex) {
|
|
14097
|
+
throw ex;
|
|
14098
|
+
}
|
|
14099
|
+
}
|
|
13886
14100
|
}
|
|
13887
14101
|
|
|
13888
14102
|
/**
|
|
@@ -14398,6 +14612,83 @@ class AdminUser {
|
|
|
14398
14612
|
}
|
|
14399
14613
|
}
|
|
14400
14614
|
|
|
14615
|
+
/**
|
|
14616
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14617
|
+
* @description Create a new user
|
|
14618
|
+
* @param {object} payload User data to create
|
|
14619
|
+
* @param {string} payload.name Full name (required)
|
|
14620
|
+
* @param {string} payload.username Username (required)
|
|
14621
|
+
* @param {string} payload.email Email (required)
|
|
14622
|
+
* @param {string} payload.orgId Primary organization ID (required)
|
|
14623
|
+
* @param {array} [payload.orgIds] Organization IDs
|
|
14624
|
+
* @param {array} [payload.role=[2]] Security roles
|
|
14625
|
+
* @param {string} [payload.password] Initial password
|
|
14626
|
+
* @param {string} session JWT session token
|
|
14627
|
+
* @return {Promise<object>} Created user document
|
|
14628
|
+
* @public
|
|
14629
|
+
* @async
|
|
14630
|
+
* @example
|
|
14631
|
+
*
|
|
14632
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
14633
|
+
* const api = new API();
|
|
14634
|
+
* const payload = {
|
|
14635
|
+
* name: 'Maria Silva',
|
|
14636
|
+
* username: 'maria.silva',
|
|
14637
|
+
* email: 'maria@example.com',
|
|
14638
|
+
* orgId: '5edd11c46b6ce9729c2c297c',
|
|
14639
|
+
* role: [2]
|
|
14640
|
+
* };
|
|
14641
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
14642
|
+
* await api.admin.user.create(payload, session);
|
|
14643
|
+
*/
|
|
14644
|
+
async create(payload, session) {
|
|
14645
|
+
const self = this;
|
|
14646
|
+
|
|
14647
|
+
try {
|
|
14648
|
+
Joi__default["default"].assert(payload, Joi__default["default"].object().required(), 'User data to create');
|
|
14649
|
+
Joi__default["default"].assert(payload.name, Joi__default["default"].string().required(), 'Full name');
|
|
14650
|
+
Joi__default["default"].assert(payload.username, Joi__default["default"].string().required(), 'Username');
|
|
14651
|
+
Joi__default["default"].assert(payload.email, Joi__default["default"].string().email().required(), 'Email');
|
|
14652
|
+
Joi__default["default"].assert(payload.orgId, Joi__default["default"].string().required(), 'Primary organization ID');
|
|
14653
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
14654
|
+
|
|
14655
|
+
const apiCall = self.client.post('/admin/users', payload, self._setHeader(session));
|
|
14656
|
+
return self._returnData(await apiCall);
|
|
14657
|
+
} catch (ex) {
|
|
14658
|
+
throw ex;
|
|
14659
|
+
}
|
|
14660
|
+
}
|
|
14661
|
+
|
|
14662
|
+
/**
|
|
14663
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14664
|
+
* @description Remove a user
|
|
14665
|
+
* @param {string} userId User ID to remove (required)
|
|
14666
|
+
* @param {string} session JWT session token
|
|
14667
|
+
* @return {Promise<object>} Removal confirmation
|
|
14668
|
+
* @public
|
|
14669
|
+
* @async
|
|
14670
|
+
* @example
|
|
14671
|
+
*
|
|
14672
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
14673
|
+
* const api = new API();
|
|
14674
|
+
* const userId = '55e4a3bd6be6b45210833fae';
|
|
14675
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
14676
|
+
* await api.admin.user.remove(userId, session);
|
|
14677
|
+
*/
|
|
14678
|
+
async remove(userId, session) {
|
|
14679
|
+
const self = this;
|
|
14680
|
+
|
|
14681
|
+
try {
|
|
14682
|
+
Joi__default["default"].assert(userId, Joi__default["default"].string().required(), 'User ID');
|
|
14683
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
14684
|
+
|
|
14685
|
+
const apiCall = self.client.delete(`/admin/users/${userId}`, self._setHeader(session));
|
|
14686
|
+
return self._returnData(await apiCall);
|
|
14687
|
+
} catch (ex) {
|
|
14688
|
+
throw ex;
|
|
14689
|
+
}
|
|
14690
|
+
}
|
|
14691
|
+
|
|
14401
14692
|
/**
|
|
14402
14693
|
* @description Request GUID to change the password
|
|
14403
14694
|
* @param {string} email - User email
|
|
@@ -14505,7 +14796,7 @@ class AdminUser {
|
|
|
14505
14796
|
|
|
14506
14797
|
const payloadToSend = {$project: project, sort};
|
|
14507
14798
|
|
|
14508
|
-
const apiCall = self.
|
|
14799
|
+
const apiCall = self.client
|
|
14509
14800
|
.post(`/admin/users?page=${page}&perPage=${perPage}`, payloadToSend, self._setHeader(session));
|
|
14510
14801
|
|
|
14511
14802
|
return self._returnData(await apiCall);
|
|
@@ -14514,6 +14805,291 @@ class AdminUser {
|
|
|
14514
14805
|
throw ex;
|
|
14515
14806
|
}
|
|
14516
14807
|
}
|
|
14808
|
+
|
|
14809
|
+
/**
|
|
14810
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14811
|
+
* @description Block a user (prevent login)
|
|
14812
|
+
* @param {string} userId User ID to block (required)
|
|
14813
|
+
* @param {string} session JWT session token
|
|
14814
|
+
* @return {Promise<object>} Updated user
|
|
14815
|
+
* @public
|
|
14816
|
+
* @async
|
|
14817
|
+
* @example
|
|
14818
|
+
*
|
|
14819
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
14820
|
+
* const api = new API();
|
|
14821
|
+
* const userId = '55e4a3bd6be6b45210833fae';
|
|
14822
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
14823
|
+
* await api.admin.user.block(userId, session);
|
|
14824
|
+
*/
|
|
14825
|
+
async block(userId, session) {
|
|
14826
|
+
const self = this;
|
|
14827
|
+
|
|
14828
|
+
try {
|
|
14829
|
+
Joi__default["default"].assert(userId, Joi__default["default"].string().required(), 'User ID');
|
|
14830
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
14831
|
+
|
|
14832
|
+
const apiCall = self.client.put(`/admin/users/${userId}/block`, {}, self._setHeader(session));
|
|
14833
|
+
return self._returnData(await apiCall);
|
|
14834
|
+
} catch (ex) {
|
|
14835
|
+
throw ex;
|
|
14836
|
+
}
|
|
14837
|
+
}
|
|
14838
|
+
|
|
14839
|
+
/**
|
|
14840
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14841
|
+
* @description Unblock a user (allow login)
|
|
14842
|
+
* @param {string} userId User ID to unblock (required)
|
|
14843
|
+
* @param {string} session JWT session token
|
|
14844
|
+
* @return {Promise<object>} Updated user
|
|
14845
|
+
* @public
|
|
14846
|
+
* @async
|
|
14847
|
+
* @example
|
|
14848
|
+
*
|
|
14849
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
14850
|
+
* const api = new API();
|
|
14851
|
+
* const userId = '55e4a3bd6be6b45210833fae';
|
|
14852
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
14853
|
+
* await api.admin.user.unblock(userId, session);
|
|
14854
|
+
*/
|
|
14855
|
+
async unblock(userId, session) {
|
|
14856
|
+
const self = this;
|
|
14857
|
+
|
|
14858
|
+
try {
|
|
14859
|
+
Joi__default["default"].assert(userId, Joi__default["default"].string().required(), 'User ID');
|
|
14860
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
14861
|
+
|
|
14862
|
+
const apiCall = self.client.put(`/admin/users/${userId}/unblock`, {}, self._setHeader(session));
|
|
14863
|
+
return self._returnData(await apiCall);
|
|
14864
|
+
} catch (ex) {
|
|
14865
|
+
throw ex;
|
|
14866
|
+
}
|
|
14867
|
+
}
|
|
14868
|
+
|
|
14869
|
+
/**
|
|
14870
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14871
|
+
* @description Block email notifications for a user
|
|
14872
|
+
* @param {string} userId User ID (required)
|
|
14873
|
+
* @param {string} session JWT session token
|
|
14874
|
+
* @return {Promise<object>} Updated user
|
|
14875
|
+
* @public
|
|
14876
|
+
* @async
|
|
14877
|
+
*/
|
|
14878
|
+
async blockEmail(userId, session) {
|
|
14879
|
+
const self = this;
|
|
14880
|
+
|
|
14881
|
+
try {
|
|
14882
|
+
Joi__default["default"].assert(userId, Joi__default["default"].string().required(), 'User ID');
|
|
14883
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
14884
|
+
|
|
14885
|
+
const apiCall = self.client.put(`/admin/users/${userId}/blockemail`, {}, self._setHeader(session));
|
|
14886
|
+
return self._returnData(await apiCall);
|
|
14887
|
+
} catch (ex) {
|
|
14888
|
+
throw ex;
|
|
14889
|
+
}
|
|
14890
|
+
}
|
|
14891
|
+
|
|
14892
|
+
/**
|
|
14893
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14894
|
+
* @description Unblock email notifications for a user
|
|
14895
|
+
* @param {string} userId User ID (required)
|
|
14896
|
+
* @param {string} session JWT session token
|
|
14897
|
+
* @return {Promise<object>} Updated user
|
|
14898
|
+
* @public
|
|
14899
|
+
* @async
|
|
14900
|
+
*/
|
|
14901
|
+
async unblockEmail(userId, session) {
|
|
14902
|
+
const self = this;
|
|
14903
|
+
|
|
14904
|
+
try {
|
|
14905
|
+
Joi__default["default"].assert(userId, Joi__default["default"].string().required(), 'User ID');
|
|
14906
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
14907
|
+
|
|
14908
|
+
const apiCall = self.client.put(`/admin/users/${userId}/unblockemail`, {}, self._setHeader(session));
|
|
14909
|
+
return self._returnData(await apiCall);
|
|
14910
|
+
} catch (ex) {
|
|
14911
|
+
throw ex;
|
|
14912
|
+
}
|
|
14913
|
+
}
|
|
14914
|
+
|
|
14915
|
+
/**
|
|
14916
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14917
|
+
* @description Update user type classification
|
|
14918
|
+
* @param {object} params Parameters
|
|
14919
|
+
* @param {string} params.userId User ID (required)
|
|
14920
|
+
* @param {string} params.userType New user type (required)
|
|
14921
|
+
* @param {string} session JWT session token
|
|
14922
|
+
* @return {Promise<object>} Updated user
|
|
14923
|
+
* @public
|
|
14924
|
+
* @async
|
|
14925
|
+
* @example
|
|
14926
|
+
*
|
|
14927
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
14928
|
+
* const api = new API();
|
|
14929
|
+
* const params = { userId: '55e4a3bd6be6b45210833fae', userType: 'USER' };
|
|
14930
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
14931
|
+
* await api.admin.user.updateUserType(params, session);
|
|
14932
|
+
*/
|
|
14933
|
+
async updateUserType(params, session) {
|
|
14934
|
+
const self = this;
|
|
14935
|
+
|
|
14936
|
+
try {
|
|
14937
|
+
Joi__default["default"].assert(params, Joi__default["default"].object().required(), 'Parameters');
|
|
14938
|
+
Joi__default["default"].assert(params.userId, Joi__default["default"].string().required(), 'User ID');
|
|
14939
|
+
Joi__default["default"].assert(params.userType, Joi__default["default"].string().required(), 'User type');
|
|
14940
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
14941
|
+
|
|
14942
|
+
const { userId, userType } = params;
|
|
14943
|
+
const apiCall = self.client.put(`/admin/users/${userId}/type/${userType}`, {}, self._setHeader(session));
|
|
14944
|
+
return self._returnData(await apiCall);
|
|
14945
|
+
} catch (ex) {
|
|
14946
|
+
throw ex;
|
|
14947
|
+
}
|
|
14948
|
+
}
|
|
14949
|
+
|
|
14950
|
+
/**
|
|
14951
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14952
|
+
* @description Get organization groups with their permissions
|
|
14953
|
+
* @param {string} orgId Organization ID (required)
|
|
14954
|
+
* @param {string} session JWT session token
|
|
14955
|
+
* @return {Promise<array>} Array of groups with permissions
|
|
14956
|
+
* @public
|
|
14957
|
+
* @async
|
|
14958
|
+
* @example
|
|
14959
|
+
*
|
|
14960
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
14961
|
+
* const api = new API();
|
|
14962
|
+
* const orgId = '5edd11c46b6ce9729c2c297c';
|
|
14963
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
14964
|
+
* const groups = await api.admin.user.getGroupsPermissions(orgId, session);
|
|
14965
|
+
*/
|
|
14966
|
+
async getGroupsPermissions(orgId, session) {
|
|
14967
|
+
const self = this;
|
|
14968
|
+
|
|
14969
|
+
try {
|
|
14970
|
+
Joi__default["default"].assert(orgId, Joi__default["default"].string().required(), 'Organization ID');
|
|
14971
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
14972
|
+
|
|
14973
|
+
const apiCall = self.client.get(
|
|
14974
|
+
`/admin/organizations/${orgId}/orgchart/groups/permissions`,
|
|
14975
|
+
self._setHeader(session)
|
|
14976
|
+
);
|
|
14977
|
+
return self._returnData(await apiCall);
|
|
14978
|
+
} catch (ex) {
|
|
14979
|
+
throw ex;
|
|
14980
|
+
}
|
|
14981
|
+
}
|
|
14982
|
+
|
|
14983
|
+
/**
|
|
14984
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
14985
|
+
* @description Update user's group memberships in an organization
|
|
14986
|
+
* @param {object} params Parameters
|
|
14987
|
+
* @param {string} params.orgId Organization ID (required)
|
|
14988
|
+
* @param {string} params.userId User ID (required)
|
|
14989
|
+
* @param {array} params.groups Array of group IDs (required)
|
|
14990
|
+
* @param {string} session JWT session token
|
|
14991
|
+
* @return {Promise<object>} Updated groups
|
|
14992
|
+
* @public
|
|
14993
|
+
* @async
|
|
14994
|
+
* @example
|
|
14995
|
+
*
|
|
14996
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
14997
|
+
* const api = new API();
|
|
14998
|
+
* const params = {
|
|
14999
|
+
* orgId: '5edd11c46b6ce9729c2c297c',
|
|
15000
|
+
* userId: '55e4a3bd6be6b45210833fae',
|
|
15001
|
+
* groups: ['groupId1', 'groupId2']
|
|
15002
|
+
* };
|
|
15003
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
15004
|
+
* await api.admin.user.updateUserGroups(params, session);
|
|
15005
|
+
*/
|
|
15006
|
+
async updateUserGroups(params, session) {
|
|
15007
|
+
const self = this;
|
|
15008
|
+
|
|
15009
|
+
try {
|
|
15010
|
+
Joi__default["default"].assert(params, Joi__default["default"].object().required(), 'Parameters');
|
|
15011
|
+
Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required(), 'Organization ID');
|
|
15012
|
+
Joi__default["default"].assert(params.userId, Joi__default["default"].string().required(), 'User ID');
|
|
15013
|
+
Joi__default["default"].assert(params.groups, Joi__default["default"].array().required(), 'Group IDs');
|
|
15014
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
15015
|
+
|
|
15016
|
+
const { orgId, userId, groups } = params;
|
|
15017
|
+
const apiCall = self.client.put(
|
|
15018
|
+
`/admin/organizations/${orgId}/orgchart/groups/${userId}`,
|
|
15019
|
+
{ groups },
|
|
15020
|
+
self._setHeader(session)
|
|
15021
|
+
);
|
|
15022
|
+
return self._returnData(await apiCall);
|
|
15023
|
+
} catch (ex) {
|
|
15024
|
+
throw ex;
|
|
15025
|
+
}
|
|
15026
|
+
}
|
|
15027
|
+
|
|
15028
|
+
/**
|
|
15029
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
15030
|
+
* @description Get organizations the admin user can manage
|
|
15031
|
+
* @param {string} session JWT session token
|
|
15032
|
+
* @return {Promise<array>} Array of organizations
|
|
15033
|
+
* @public
|
|
15034
|
+
* @async
|
|
15035
|
+
* @example
|
|
15036
|
+
*
|
|
15037
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
15038
|
+
* const api = new API();
|
|
15039
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
15040
|
+
* const orgs = await api.admin.user.getOrganizations(session);
|
|
15041
|
+
*/
|
|
15042
|
+
async getOrganizations(session) {
|
|
15043
|
+
const self = this;
|
|
15044
|
+
|
|
15045
|
+
try {
|
|
15046
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
15047
|
+
|
|
15048
|
+
const apiCall = self.client.get('/admin/users/organizations', self._setHeader(session));
|
|
15049
|
+
return self._returnData(await apiCall);
|
|
15050
|
+
} catch (ex) {
|
|
15051
|
+
throw ex;
|
|
15052
|
+
}
|
|
15053
|
+
}
|
|
15054
|
+
|
|
15055
|
+
/**
|
|
15056
|
+
* @author Myndware <augusto.pissarra@myndware.com>
|
|
15057
|
+
* @description Get users belonging to an organization
|
|
15058
|
+
* @param {object} params Parameters
|
|
15059
|
+
* @param {string} params.orgId Organization ID (required)
|
|
15060
|
+
* @param {array} [params.userIds] Optional array of user IDs to filter
|
|
15061
|
+
* @param {string} session JWT session token
|
|
15062
|
+
* @return {Promise<array>} Array of users with id, name, email, title
|
|
15063
|
+
* @public
|
|
15064
|
+
* @async
|
|
15065
|
+
* @example
|
|
15066
|
+
*
|
|
15067
|
+
* const API = require('@docbrasil/api-systemmanager');
|
|
15068
|
+
* const api = new API();
|
|
15069
|
+
* const params = { orgId: '5edd11c46b6ce9729c2c297c' };
|
|
15070
|
+
* const session = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...';
|
|
15071
|
+
* const users = await api.admin.user.getOrgUsers(params, session);
|
|
15072
|
+
*/
|
|
15073
|
+
async getOrgUsers(params, session) {
|
|
15074
|
+
const self = this;
|
|
15075
|
+
|
|
15076
|
+
try {
|
|
15077
|
+
Joi__default["default"].assert(params, Joi__default["default"].object().required(), 'Parameters');
|
|
15078
|
+
Joi__default["default"].assert(params.orgId, Joi__default["default"].string().required(), 'Organization ID');
|
|
15079
|
+
Joi__default["default"].assert(session, Joi__default["default"].string().required(), 'Session token');
|
|
15080
|
+
|
|
15081
|
+
const { orgId, userIds } = params;
|
|
15082
|
+
let url = `/admin/organizations/${orgId}/orgusers`;
|
|
15083
|
+
if (userIds && userIds.length > 0) {
|
|
15084
|
+
url += `?userIds=${JSON.stringify(userIds)}`;
|
|
15085
|
+
}
|
|
15086
|
+
|
|
15087
|
+
const apiCall = self.client.get(url, self._setHeader(session));
|
|
15088
|
+
return self._returnData(await apiCall);
|
|
15089
|
+
} catch (ex) {
|
|
15090
|
+
throw ex;
|
|
15091
|
+
}
|
|
15092
|
+
}
|
|
14517
15093
|
}
|
|
14518
15094
|
|
|
14519
15095
|
/**
|