# User Attributes Object

User accounts can be initialized as either an **End-User** or **Service User**:

* End-User accounts are assigned to employees.
* Service User accounts are used by applications such as the LDAP sync or any application or bot built using the Symphony APIs.

**Do not assign Service User accounts to an employee.** Calling certain endpoints requires a Service User configured with the correct role or roles. For more information about End-User and Service User accounts and their roles, see the [Symphony Administration Guide](https://docs.symphony.com/series/4099883-symphony-admin-guides).

### End-User Account Attributes V2

`firstName` and `lastName` have a 64-character limit. All other End-User attributes have a 256-character limit.

The following attributes apply to the [Create User V2](https://rest-api.symphony.com/main/user-management/create-user-v2) and [Update User v2](https://rest-api.symphony.com/main/user-management/update-user-v2) endpoints.\
\&#xNAN;*Note that the column "Required at Creation" concerns only the* [*Create User v2*](https://rest-api.symphony.com/main/user-management/create-user-v2) *endpoint.*

<table><thead><tr><th width="210">userAttributes Object</th><th width="140" data-type="checkbox">Required at Creation</th><th>Possible Values</th></tr></thead><tbody><tr><td>accountType</td><td>false</td><td>Possible values: <code>NORMAL</code> (end-user), <code>SYSTEM</code> (service user).<br>If not specified, <code>NORMAL</code> will be used.<br>When you create a <code>SYSTEM</code> account, the following properties are not required: <code>firstName</code>, <code>lastName</code>.</td></tr><tr><td>emailAddress</td><td>true</td><td>The user's email address.<br>Must be unique.</td></tr><tr><td>firstName</td><td>true</td><td>The user's first name. Required for <code>NORMAL</code> users.</td></tr><tr><td>lastName</td><td>true</td><td>The user's last name. Required for <code>NORMAL</code> users.</td></tr><tr><td>userName</td><td>true</td><td>Must be unique.</td></tr><tr><td>displayName</td><td>true</td><td>The user's display name.</td></tr><tr><td>companyName</td><td>true</td><td><p>The user's company name.</p><p>If not specified, it is set with the default company name.</p></td></tr><tr><td>department</td><td>true</td><td>The user's department.</td></tr><tr><td>division</td><td>true</td><td>The user's division.</td></tr><tr><td>title</td><td>true</td><td>The user's title.</td></tr><tr><td>workPhoneNumber</td><td>true</td><td>The user's work phone number.</td></tr><tr><td>mobilePhoneNumber</td><td>true</td><td>The user's mobile number.</td></tr><tr><td>twoFactorAuthPhone</td><td>true</td><td>The user's two factor authentication mobile phone number.</td></tr><tr><td>smsNumber</td><td>true</td><td>The user's SMS number.</td></tr><tr><td>location</td><td>true</td><td>The user's location.</td></tr><tr><td>recommendedLanguage</td><td>true</td><td>The recommended language.</td></tr><tr><td>jobFunction</td><td>true</td><td><p>The user's job function.<br>Possible values:</p><p><code>Analyst, Other</code><br><code>Business Development Executive</code><br><code>Corporate Access</code><br><code>Developer</code><br><code>Director</code><br><code>Economist</code><br><code>Portfolio Manager</code><br><code>Project Manager</code><br><code>Research Analyst</code><br><code>Sales</code><br><code>Strategist</code><br><code>Trader</code></p></td></tr><tr><td>assetClasses</td><td>true</td><td><p>The user's asset classes.<br>Possible values:</p><p><code>Currencies</code><br><code>Commodities</code><br><code>Equities</code><br><code>Fixed Income</code></p></td></tr><tr><td>industries</td><td>true</td><td><p>The user's industries.<br>Possible values:</p><p><code>Basic Materials</code><br><code>Conglomerates</code><br><code>Consumer Cyclicals</code><br><code>Consumer Non-Cyclicals</code><br><code>Energy &#x26; Utilities</code><br><code>Financials</code><br><code>Healthcare</code><br><code>Real Estate</code><br><code>Services</code><br><code>Technology</code><br><code>Transportation</code></p></td></tr><tr><td>marketCoverage</td><td>true</td><td><p>Possible values:</p><p><code>EMEA</code><br><code>NA</code><br><code>APAC</code><br><code>LATAM</code></p></td></tr><tr><td>responsibility</td><td>true</td><td><p>Possible values:</p><p><code>BAU</code><br><code>Escalation</code></p></td></tr><tr><td>function</td><td>true</td><td><p>Possible values:</p><p><code>Collateral</code><br><code>Margin</code><br><code>Liquidity Management</code><br><code>Regulatory Outreach</code><br><code>Confirmation</code><br><code>Matching</code><br><code>Allocation</code><br><code>Settlements</code><br><code>Trade Processing</code><br><code>Claims Processing</code><br><code>Trade Management</code><br><code>Post Trade Management</code><br><code>Middle Office</code><br><code>Pre-Matching</code></p></td></tr><tr><td>instrument</td><td>true</td><td><p>Possible values:</p><p><code>Securities</code><br><code>Fixed Income</code><br><code>Equities</code></p></td></tr><tr><td>currentKey</td><td>true</td><td>A <a href="userkeyrequest-object">UserKeyRequest Object</a> containing the current RSA key information to use for authenticating the user. When updating the user, this can be set (rotated) to a new key, in which case the existing key is stored in the previousKey and can be used for authentication during the current session</td></tr><tr><td>previousKey</td><td>true</td><td>A <a href="userkeyrequest-object">UserKeyRequest Object</a> containing the RSA key information from the previous key in a key rotation scenario. The previous key can be used when the currentKey has been updated during the current session. The previousKey is valid for 72 hours.</td></tr><tr><td>userMetadata</td><td>false</td><td>This field is reserved for internal use only. Introduced in SBE 26.1</td></tr></tbody></table>

### Service User Account Attributes

<table><thead><tr><th width="210.33333333333331">`userAttributes` Object</th><th width="141" data-type="checkbox">Required</th><th>Possible Values</th></tr></thead><tbody><tr><td><code>accountType</code></td><td>true</td><td><code>SYSTEM</code></td></tr><tr><td><code>userName</code></td><td>true</td><td>Must be unique.</td></tr><tr><td><code>emailAddress</code></td><td>true</td><td>The user's email address.</td></tr><tr><td><code>displayName</code></td><td>true</td><td>The user's display name.</td></tr><tr><td><code>companyName</code></td><td>false</td><td>The user's company name.<br><br>If not specified, it is set with the default company name.</td></tr><tr><td><code>department</code></td><td>false</td><td>The user's department.</td></tr><tr><td><code>division</code></td><td>false</td><td>The user's division</td></tr><tr><td><code>workPhoneNumber</code></td><td>false</td><td>The user's work phone number.</td></tr><tr><td><code>mobilePhoneNumber</code></td><td>false</td><td>The user's mobile number.</td></tr><tr><td><code>twoFactorAuthPhone</code></td><td>false</td><td>The user's two factor authentication mobile phone number.</td></tr><tr><td><code>location</code></td><td>false</td><td>The user's location.</td></tr><tr><td><code>recommendedLanguage</code></td><td>false</td><td>The recommended language.</td></tr><tr><td><code>jobFunction</code></td><td>false</td><td>The user's job function.<br>Possible values:<br><br><code>Analyst, Other</code><br><code>Business Development Executive</code><br><code>Corporate Access</code><br><code>Developer</code><br><code>Director</code><br><code>Economist</code><br><code>Portfolio Manager</code><br><code>Project Manager</code><br><code>Research Analyst</code><br><code>Sales</code><br><code>Strategist</code><br><code>Trader</code></td></tr><tr><td><code>assetClasses</code></td><td>false</td><td>The user's asset classes.<br>Possible values:<br><br><code>Currencies</code><br><code>Commodities</code><br><code>Equities</code><br><code>Fixed Income</code></td></tr><tr><td><code>industries</code></td><td>false</td><td>The user's industries. Possible values:<br><br><code>Basic Materials</code><br><code>Conglomerates</code><br><code>Consumer Cyclicals</code><br><code>Consumer Non-Cyclicals</code><br><code>Energy &#x26; Utilities</code><br><code>Financials</code><br><code>Healthcare</code><br><code>Real Estate</code><br><code>Services</code><br><code>Technology</code><br><code>Transportation</code></td></tr><tr><td><code>marketCoverage</code></td><td>false</td><td>Possible values:<br><code>EMEA</code><br><code>NA</code><br><code>APAC</code><br><code>LATAM</code></td></tr><tr><td><code>responsibility</code></td><td>false</td><td>Possible values:<br><code>BAU</code><br><code>Escalation</code></td></tr><tr><td><code>function</code></td><td>false</td><td>Possible values:<br><code>Collateral</code><br><code>Margin</code><br><code>Liquidity Management</code><br><code>Regulatory Outreach</code><br><code>Confirmation</code><br><code>Matching</code><br><code>Allocation</code><br><code>Settlements</code><br><code>Trade Processing</code><br><code>Claims Processing</code><br><code>Trade Management</code><br><code>Post Trade Management</code><br><code>Middle Office</code><br><code>Pre-Matching</code></td></tr><tr><td><code>instrument</code></td><td>false</td><td>Possible values:<br><code>Securities</code><br><code>Fixed Income</code><br><code>Equities</code></td></tr><tr><td><code>currentKey</code></td><td>false</td><td>A <a href="userkeyrequest-object">UserKeyRequest Object</a> containing the current RSA key information to use for authenticating the user. When updating the user, this can be set (rotated) to a new key, in which case the existing key is stored in the previousKey and can be used for authentication during the current session.</td></tr><tr><td><code>previousKey</code></td><td>false</td><td>A <a href="userkeyrequest-object">UserKeyRequest Object</a> containing the RSA key information from the previous key in a key rotation scenario. The previous key can be used when the currentKey has been updated during the current session. The previousKey is valid for 72 hours.</td></tr><tr><td><code>userMetadata</code></td><td>false</td><td>This field is reserved for internal use only. Introduced in SBE 26.1</td></tr></tbody></table>
