User Attribute Reference

View as Markdown

User Attributes are what make up a user’s identity within Moveworks. Moveworks exposes these attributes to be used in API requests & launch options for ease of development.

List of available User Attributes

namedescriptiontype
custom_attributesThis can be used to dot walk into custom attributesobj
first_nameThe user’s first namestring
last_nameThe user’s last namestring
email_addrThe user’s emailstring
roleThe user’s rolestring
departmentThe user’s departmentstring
manager_emailThe user’s manager emailstring
full_nameThe user’s full namestring
employee_idThe user’s employee IDstring
cost_center_idThe user’s cost center IDstring
cost_center_nameThe user’s cost center namestring
work_statusThe user’s work statusenum
country_codeThe user’s country codestring
timezoneThe user’s timezonestring
regionThe user’s regionstring
cityThe user’s citystring
stateThe user’s statestring
user_tagsThe user’s assigned user tagsenum
external_system_identitiesThe user’s system related infomap

📘 Any key value pair that does not match up with one of the default user attributes can be mapped to the custom_attributes field

For example, if you a have a field called office that would like to map to the Moveworks User, you would map that under custom_attributes, and can then access the field using user.custom_attributes.office

work_status enum

The work status field is composed of the following predefined options

options
UNKNOWN_WORK_STATUS
CONTINGENT
INTERN
FULL_TIME

user_tags enum

The user tags field is composed of the following predefined options:

options
UNKNOWN_USER_TAG
BASIC_USER
VIP
FIELD_AGENT
KNOWLEDGE_WORKER
IT_AGENT
TESTER
SUPPORTED_LANGUAGE_USER
SERVICE_ACCOUNT
CALL_CENTER
HAS_ACCESS_TO_BOT
DIRECTOR
EXECUTIVE
SOCIAL_AUTH_USER

external_system_identities map

The external system identities map has the shape of <string, ExternalSystemIdentity> which can be interpreted as a dictionary with a string key such as jira_service_desk and an object as its value. The objects composes of the following fields:

An example mapping would be: user.external_system_identities.jira_service_desk.external_id

fieldsdescription
user_idThe user ID to log into the external system
external_idThe user UUID in the external system

Refer to this article to learn about registering a custom user attribute.

Example & Schema

1{
2 "user": {
3 "custom_attributes": {
4 "office_location": "Building 4, Floor 12",
5 "primary_skill": "Network troubleshooting"
6 },
7 "first_name": "Jane",
8 "last_name": "Doe",
9 "email_addr": "jane.doe@example.com",
10 "role": "Senior IT Agent",
11 "department": "Global IT",
12 "manager_email": "manager.smith@example.com",
13 "full_name": "Jane Doe",
14 "employee_id": "987654",
15 "cost_center_id": "IT-456-US",
16 "cost_center_name": "US IT Operations",
17 "work_status": "FULL_TIME",
18 "country_code": "US",
19 "timezone": "America/New_York",
20 "region": "NA-East",
21 "city": "New York",
22 "state": "NY",
23 "user_tags": ["VIP", "IT_AGENT", "HAS_ACCESS_TO_BOT"],
24 "external_system_identities": {
25 "jira_service_desk": {
26 "user_id": "janedoe_jira",
27 "external_id": "a1b2c3d4-e5f6-7890-g1h2-i3j4k5l6m7n8"
28 },
29 "workday": {
30 "user_id": "987654",
31 "external_id": "o9p8q7r6-s5t4-3210-u1v2-w3x4y5z6a7b8"
32 }
33 }
34 }
35}
Schema
1{
2 "user": {
3 "custom_attributes": {
4 "type": "obj",
5 "description": "This can be used to dot walk into custom attributes"
6 },
7 "first_name": {
8 "type": "string",
9 "description": "The user's first name"
10 },
11 "last_name": {
12 "type": "string",
13 "description": "The user's last name"
14 },
15 "email_addr": {
16 "type": "string",
17 "description": "The user's email"
18 },
19 "role": {
20 "type": "string",
21 "description": "The user's role"
22 },
23 "department": {
24 "type": "string",
25 "description": "The user's department"
26 },
27 "manager_email": {
28 "type": "string",
29 "description": "The user's manager email"
30 },
31 "full_name": {
32 "type": "string",
33 "description": "The user's full name"
34 },
35 "employee_id": {
36 "type": "string",
37 "description": "The user's employee ID"
38 },
39 "cost_center_id": {
40 "type": "string",
41 "description": "The user's cost center ID"
42 },
43 "cost_center_name": {
44 "type": "string",
45 "description": "The user's cost center name"
46 },
47 "work_status": {
48 "type": "enum",
49 "description": "The user's work status",
50 "options": [
51 "UNKNOWN_WORK_STATUS",
52 "CONTINGENT",
53 "INTERN",
54 "FULL_TIME"
55 ]
56 },
57 "country_code": {
58 "type": "string",
59 "description": "The user's country code"
60 },
61 "timezone": {
62 "type": "string",
63 "description": "The user's timezone"
64 },
65 "region": {
66 "type": "string",
67 "description": "The user's region"
68 },
69 "city": {
70 "type": "string",
71 "description": "The user's city"
72 },
73 "state": {
74 "type": "string",
75 "description": "The user's state"
76 },
77 "user_tags": {
78 "type": "enum",
79 "description": "The user's assigned user tags",
80 "options": [
81 "UNKNOWN_USER_TAG",
82 "BASIC_USER",
83 "VIP",
84 "FIELD_AGENT",
85 "KNOWLEDGE_WORKER",
86 "IT_AGENT",
87 "TESTER",
88 "SUPPORTED_LANGUAGE_USER",
89 "SERVICE_ACCOUNT",
90 "CALL_CENTER",
91 "HAS_ACCESS_TO_BOT",
92 "DIRECTOR",
93 "EXECUTIVE",
94 "SOCIAL_AUTH_USER"
95 ]
96 },
97 "external_system_identities": {
98 "type": "map",
99 "description": "The user's system related info",
100 "structure": {
101 "shape": "<string, ExternalSystemIdentity>",
102 "value_object_fields": {
103 "user_id": {
104 "description": "The user ID to log into the external system"
105 },
106 "external_id": {
107 "description": "The user UUID in the external system"
108 }
109 },
110 "example_mapping": "user.external_system_identities.jira_service_desk.external_id"
111 }
112 }
113 }
114}