- Home [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
- Getting started
- Use cases
-
API
-
Object types
- DispositionType
- ProcessInstanceState
- ProcessTaskState
- ApplicationItemRegistration
- ApplicationProjectItem
- ApplicationProjectItemRef
- ApplicationProjectPlanElementItem
- ApplicationProjectPlanElementItemRef
- BaseApplicationItem
- BaseApplicationItemRef
- BaseItem
- BaseItemData
- CurrentUserItem
- DirectoryData
- DirectoryItem
- EmployeeItemData
- EmployeeItemParams
- EmployeeItemProcesses
- FileData
- FileItem
- FileItemRef
- FileVersionData
- FileVersionItem
- ImageData
- ImageItem
- ImageItemRef
- InstanceAddr
- Item
- ItemData
- ItemRef
- MailMessageData
- MailMessageItem
- MailMessageItemRef
- OrganisationStructureData
- OrganisationStructureItem
- OrganisationStructureItemRef
- ParamsItem
- ProcessInstanceData
- ProcessInstanceItem
- ProcessInstanceItemRef
- ProcessTaskData
- ProcessTaskItem
- ProcessTaskItemRef
- ProcessTemplate
- ProcessTimer
- ReminderData
- ReminderItem
- ReplacementData
- ReplacementItem
- StatusHistoryData
- StatusHistoryItem
- StatusHistoryItemRef
- TaskItemExit
- UserData
- UserGroupData
- UserGroupItem
- UserGroupItemRef
- UserItem
- UserItemRef
- ApplicationItem
- ApplicationItemRef
- Data types
- Global constants
- Work with apps
- Web requests
- Access permissions
- Document flow
- Live Chats
- “Code” widget
- Signatures
- Business calendars
- Integration with IP telephony
- Integration with email marketing services
-
Object types
Current user object
Type parameters
I: Item<ItemData>
Hierarchy
Properties
Readonly code
App code of the URL’s target (the app’s code).
Readonly data
Values of object’s fields.
Readonly fields
Description of the object’s fields.
Readonly id
ID of the URL’s target.
Readonly namespace
Namespace of the URL target (the code of the workspace that the app belongs to).
Readonly timezone
Time zone with time offset in hours.
If the user's time zone is not defined, the system uses the company's time zone. Example:
const currentUser = await System.users. getCurrentUser(); const userTimezone = currentUser.timezone;
Methods
assignToPosition
The method allows you to assign a position to a user.
After you use this method, you need to save the user object.
Parameters
position: OrganisationStructureItem
Returns void
block
The method locks a user’s account.
await Context.data.user.block();
Returns Promise<void>
fetch
Request complete data of a reference object.
Returns Promise<UserItem>
getChiefs
The method retrieves all superiors of a user.
This method defines all the superiors of a user based on the organizational chart. The first position above the user’s position in the organizational chart tree will be considered the user’s superior. If the user does not have a position in the org chart, the method will return an empty list. If the user is in the root of the org chart tree, the method will return this user.
const chiefs = await Context.data.__createdBy.getChiefs(); Context.data.approver = chiefs[0];
Returns Promise<UserItemRef[]>
getLocale
The method returns a user’s locale.
A locale code has two parts divided by a hyphen: *Two- or three-charater IETF code of the language. *Region code (ISO 3166-1), which is usually the two-charater code of the country. Examples:
const currentUser = await System.users.getCurrentUser(); const userLocale = await currentUser. getLocale(); if (userLocale.startsWith('de-')) { Context.data.message = 'Hallo Welt!'; } else if (userLocale.startsWith('es-')) { Context.data.message = 'Hola mundo!'; } else { Context.data.message = 'Hello world!'; }
Returns Promise<string>
A locale as a string.
logout
Logout for the current user.
const user = await System.users.getCurrentUser(); await user.logout();
Returns Promise<void>
normalize
Delete duplicate data in arrays.
The method deletes duplicates in fields that store arrays of links to system objects (users, files, app items, or documents). For example, you can call this method after bulk editing data within an object.
const app1 = await Context.data.app1.fetch(); const app2 = await Context.data.app2 .fetch(); app1.data.executors.push(app2.data.executors); app1.normalize(); // Now we need to go over the elements in the new array app1.data.executors .forEach( ... );
Returns void
positions
The method returns a list of positions the user is assigned.
const currentUser = await System.users.getCurrentUser(); const positions = await currentUser.positions();
Returns Promise<OrganisationStructureItem[]>
removeFromPosition
The method allows you to remove a user from a position.
After you use this method, you need to save the user object.
Parameters
position: OrganisationStructureItem
Returns void
save
The method saves the user object.
This method allows you to update the current user and invite new users
Editable fields:
fullname
,mobilePhone
,workPhone
,birthDate
,hireDate
,avatar
,timezone
,accounts
,displayedPosition
, andadditionalData
. If you’re inviting a new user, you have to fill out theemail
field. Updating:const user = await Context.data .user.fetch(); const timezones = System.timezones.all().filter( timezone => timezone.name === 'Africa/Bujumbura' ) user.data.timezone = timezones[0].name; user.data.mobilePhone!.tel = '9655555555'; user.data.fullname!.firstname = 'Peter'; await user.save();
To send an invitation, you need to initialize the new user:
const user = System.users.create(); user.data.email = 'example@example. com'; user.data.fullname = { lastname: 'Robertson', firstname: 'Jack', middlename: 'Thomas' } await user. save();
Returns Promise<void>
setLocale
The method allows changing a user’s locale (language).
As the
locale
argument, the locale code is passed, which consists of two parts separated by a hyphen:// Get the new user locale from the context const locale = Context.data.new_locale; if (!locale) { throw new Error('New user locale is not specified'); } // Get the current user const user = await System.users.getCurrentUser(); // Change the user's locale await user.setLocale(locale);
Parameters
locale: string
Returns Promise<void>
setPositions
The method sets a list of positions the user is assigned.
The positions previously configured for this user will be lost. After you use this method, you need to save the user object.
Parameters
positions: OrganisationStructureItem[]
Returns void
unblock
The method unlocks a user’s account.
await Context.data.user.unblock();
Returns Promise<void>
Properties
Methods