POST Agents/User/SaveUser
Some tooltip text!
• 12 minutes to read
• 12 minutes to read
POST /api/v1/Agents/User/SaveUser
Updates the existing User or creates a new User if the id parameter is 0.
NsApiSlow threshold: 2000 ms.
Online Restricted: ## The User agent is not available in Online by default. User management is not allowed for partner apps.
Request Headers
| Parameter Name | Description |
|---|---|
| Authorization | Supports 'Basic', 'SoTicket' and 'Bearer' schemes, depending on installation type. |
| X-XSRF-TOKEN | If not using Authorization header, you must provide XSRF value from cookie or hidden input field |
| Content-Type | Content-type of the request body: application/json, text/json, application/xml, text/xml, application/x-www-form-urlencoded, application/json-patch+json, application/merge-patch+json |
| Accept | Content-type(s) you would like the response in: application/json, text/json, application/xml, text/xml, application/json-patch+json, application/merge-patch+json |
| Accept-Language | Convert string references and multi-language values into a specified language (iso2) code. |
| SO-Language | Convert string references and multi-language values into a specified language (iso2) code. Overrides Accept-Language value. |
| SO-Culture | Number, date formatting in a specified culture (iso2 language) code. Partially overrides SO-Language/Accept-Language value. Ignored if no Language set. |
| SO-TimeZone | Specify the timezone code that you would like date/time responses converted to. |
| SO-AppToken | The application token that identifies the partner app. Used when calling Online WebAPI from a server. |
Request Body: user
The User that is saved
| Property Name | Type | Description |
|---|---|---|
| AssociateId | Integer | Primary key |
| Name | String | Initials, UserId - also used as login name for on-site installations. Identifies user in archives. |
| Rank | Integer | Rank order |
| Tooltip | String | Tooltip or other description |
| LicenseOwners | Array | The restricted and unrestricted module licenses grouped by license owner. These module licenses are either assigned or unassigned to this user |
| Role | Role | Users role for role-based security. Determines permissions and access rights for the user. |
| UserGroup | UserGroup | The main user group that this user belongs to. |
| OtherGroups | Array | The other groups this user is a member of, apart from the main user group. |
| Person | Person | The person associated with this user. Detailed information about the user |
| Deleted | Boolean | If true, the user is retired and should have no rights, not appear in lists, etc. |
| Lastlogin | String | Last login date |
| Lastlogout | String | Last logout date |
| EjUserId | Integer | ID of the ej user record corresponding to this associate; 0 for associates that are not ej users |
| RequestSignature | String | ej users request signature |
| Type | String | User type: 1=InternalAssociate, 2=ResourceAssociate, 3=ExternalAssociate, 4=AnonymousAssociate, 5=SystemAssociate |
| IsPersonRetired | Boolean | True if the user is retired and should have no rights, not appear in lists, etc. |
| IsOnTravel | Boolean | True if the user is on travel. |
| Credentials | Array | List of credentials registered for this user. i.e. valid authentication methods. |
| UserName | String | User name, a.k.a. Login name. This might be an e-mail address. |
| TicketCategories | Array | Request Ticket Categories assigned to the user. |
| NickName | String | The unique nick name for this user. Used in Service as an alias, similar to Name/Initials. |
| WaitingForApproval | Boolean | The user is waiting for an administrator to approve/grant her/him access. |
| ExtraFields | Object | Deprecated: Use {SuperOffice.CRM.Services.User.CustomFields} instead. Extra fields added to the carrier. This could be data from Plug-ins, the foreign key system, external applications, etc. |
| CustomFields | Object | Udef + Extra fields added to the carrier. Extra fields as defined by changes to database schema + user-defined fields as defined by admin. Custom fields combines user defined fields and extra fields into one bucket. The individual {SuperOffice.CRM.Services.User.ExtraFields} and |
| PostSaveCommands | Array | Post custom commands the client should execute after save has completed. |
Response:
OK
| Response | Description |
|---|---|
| 200 | OK |
Response body: User
| Property Name | Type | Description |
|---|---|---|
| AssociateId | int32 | Primary key |
| Name | string | Initials, UserId - also used as login name for on-site installations. Identifies user in archives. |
| Rank | int32 | Rank order |
| Tooltip | string | Tooltip or other description |
| LicenseOwners | array | The restricted and unrestricted module licenses grouped by license owner. These module licenses are either assigned or unassigned to this user |
| Role | Role | Users role for role-based security. Determines permissions and access rights for the user. |
| UserGroup | UserGroup | The main user group that this user belongs to. Use MDO List name "usergroup" to get list items. |
| OtherGroups | array | The other groups this user is a member of, apart from the main user group. Use MDO List name "usergroup" to get list items. |
| Person | Person | The person associated with this user. Detailed information about the user Use MDO List name "person_new" to get list items. |
| Deleted | bool | If true, the user is retired and should have no rights, not appear in lists, etc. |
| Lastlogin | date-time | Last login date |
| Lastlogout | date-time | Last logout date |
| EjUserId | int32 | ID of the ej user record corresponding to this associate; 0 for associates that are not ej users |
| RequestSignature | string | ej users request signature |
| Type | string | User type: 1=InternalAssociate, 2=ResourceAssociate, 3=ExternalAssociate, 4=AnonymousAssociate, 5=SystemAssociate |
| IsPersonRetired | bool | True if the user is retired and should have no rights, not appear in lists, etc. |
| IsOnTravel | bool | True if the user is on travel. |
| Credentials | array | List of credentials registered for this user. i.e. valid authentication methods. |
| UserName | string | User name, a.k.a. Login name. This might be an e-mail address. |
| TicketCategories | array | Request Ticket Categories assigned to the user. Use MDO List name "ejCategory" to get list items. |
| NickName | string | The unique nick name for this user. Used in Service as an alias, similar to Name/Initials. |
| WaitingForApproval | bool | The user is waiting for an administrator to approve/grant her/him access. |
| ExtraFields | object | Deprecated: Use {SuperOffice.CRM.Services.User.CustomFields} instead. Extra fields added to the carrier. This could be data from Plug-ins, the foreign key system, external applications, etc. |
| CustomFields | object | Udef + Extra fields added to the carrier. Extra fields as defined by changes to database schema + user-defined fields as defined by admin. Custom fields combines user defined fields and extra fields into one bucket. The individual {SuperOffice.CRM.Services.User.ExtraFields} and UserDefinedFields properties are deprecated in favor of this combined collection. |
| PostSaveCommands | array | Post custom commands the client should execute after save has completed. |
| TableRight | TableRight | The carrier's table right |
| FieldProperties | object | Field property dictionary mapping field names to field access rights. |
Sample request
POST /api/v1/Agents/User/SaveUser
Authorization: Basic dGplMDpUamUw
Accept: application/json; charset=utf-8
Accept-Language: en
Content-Type: application/json; charset=utf-8
{
"AssociateId": 129,
"Name": "Bins-Bergnaum",
"Rank": 643,
"Tooltip": "qui",
"LicenseOwners": [
{
"Name": "Rutherford, Kemmer and McLaughlin",
"Description": "Horizontal multi-state budgetary management",
"RestrictedModuleLicenses": [
{},
{}
],
"UnrestrictedModuleLicenses": [
{},
{}
]
},
{
"Name": "Rutherford, Kemmer and McLaughlin",
"Description": "Horizontal multi-state budgetary management",
"RestrictedModuleLicenses": [
{},
{}
],
"UnrestrictedModuleLicenses": [
{},
{}
]
}
],
"Role": null,
"UserGroup": null,
"OtherGroups": [
{
"Value": "voluptatibus",
"Tooltip": "autem",
"Id": 135,
"Rank": 931,
"Deleted": false
},
{
"Value": "voluptatibus",
"Tooltip": "autem",
"Id": 135,
"Rank": 931,
"Deleted": false
}
],
"Person": null,
"Deleted": false,
"Lastlogin": "2009-02-13T10:11:01.7581085+01:00",
"Lastlogout": "2019-06-19T10:11:01.7581085+02:00",
"EjUserId": 316,
"RequestSignature": "in",
"Type": "AnonymousAssociate",
"IsPersonRetired": false,
"IsOnTravel": false,
"Credentials": [
{
"Type": null,
"Value": "laudantium",
"DisplayValue": "quia"
},
{
"Type": null,
"Value": "laudantium",
"DisplayValue": "quia"
}
],
"UserName": "Emard-Veum",
"TicketCategories": [
{
"Id": 139,
"Name": "Wolf-Prosacco",
"ToolTip": "Itaque voluptatem corporis et.",
"Deleted": false,
"Rank": 67,
"Type": "aliquid",
"ChildItems": [
{},
{}
],
"IconHint": "est",
"ColorBlock": 203,
"ExtraInfo": "tempora",
"StyleHint": "cumque",
"FullName": "Dr. Arvel Williamson"
}
],
"NickName": "Deckow-Wunsch",
"WaitingForApproval": false,
"ExtraFields": {
"ExtraFields1": "cum",
"ExtraFields2": "eveniet"
},
"CustomFields": {
"CustomFields1": "autem",
"CustomFields2": "consequatur"
},
"PostSaveCommands": [
{
"Name": "Nolan, Kiehn and Wunsch",
"DisplayName": "Adams Group",
"Description": "Operative executive intranet",
"ToolTip": "Quibusdam quo minus aut.",
"Actions": "Implicit",
"ActionData": "sint"
},
{
"Name": "Nolan, Kiehn and Wunsch",
"DisplayName": "Adams Group",
"Description": "Operative executive intranet",
"ToolTip": "Quibusdam quo minus aut.",
"Actions": "Implicit",
"ActionData": "sint"
}
]
}
Sample response
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"AssociateId": 16,
"Name": "Sarah Johnson",
"Rank": 2,
"Tooltip": "Support Agent - Tech Corporation",
"LicenseOwners": [
{
"Name": "Tech Corporation",
"Description": "Support and service licenses",
"RestrictedModuleLicenses": [
{},
{}
],
"UnrestrictedModuleLicenses": [
{},
{}
],
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 207
}
}
},
{
"Name": "Tech Corporation",
"Description": "Support and service licenses",
"RestrictedModuleLicenses": [
{},
{}
],
"UnrestrictedModuleLicenses": [
{},
{}
],
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 207
}
}
}
],
"Role": null,
"UserGroup": null,
"OtherGroups": [
{
"Value": "dolore",
"Tooltip": "voluptate",
"Id": 703,
"Rank": 218,
"Deleted": true,
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 944
}
}
}
],
"Person": null,
"Deleted": false,
"Lastlogin": "2024-11-20T09:15:00+01:00",
"Lastlogout": "2024-11-19T17:30:00+01:00",
"EjUserId": 16,
"RequestSignature": "SJ-2024",
"Type": "InternalAssociate",
"IsPersonRetired": false,
"IsOnTravel": false,
"Credentials": [
{
"Type": null,
"Value": "sarah.johnson",
"DisplayValue": "SuperOffice Password",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 700
}
}
},
{
"Type": null,
"Value": "sarah.johnson",
"DisplayValue": "SuperOffice Password",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.String",
"FieldLength": 700
}
}
}
],
"UserName": "sarah.johnson",
"TicketCategories": [
{
"Id": 2,
"Name": "Customer Service",
"ToolTip": "General customer service requests",
"Deleted": false,
"Rank": 73,
"Type": "quia",
"ChildItems": [
{},
{}
],
"IconHint": "sit",
"ColorBlock": 261,
"ExtraInfo": "explicabo",
"StyleHint": "velit",
"FullName": "Customer Service",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 433
}
}
}
],
"NickName": "SarahJ",
"WaitingForApproval": false,
"ExtraFields": {
"ExtraFields1": "et",
"ExtraFields2": "nihil"
},
"CustomFields": {
"CustomFields1": "dolorum",
"CustomFields2": "culpa"
},
"PostSaveCommands": [
{
"Name": "Rempel-Jenkins",
"DisplayName": "Cummerata, Runolfsdottir and Koch",
"Description": "Reduced secondary matrices",
"ToolTip": "Modi porro.",
"Actions": "Implicit",
"ActionData": "qui",
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 818
}
}
}
],
"TableRight": null,
"FieldProperties": {
"fieldName": {
"FieldRight": null,
"FieldType": "System.Int32",
"FieldLength": 640
}
}
}