API

System APIs

POST system/setting-definitions

Create a new system setting definition

HTTP method POST
URI https://api.rambase.net/system/setting-definitions
Supported formats Xml, Html, Json (ex. $format=json)
Successful HTTP status code 201
API resource identifier 3022, version 2

The following body must be added to the request. Mouse over fieldnames for description and other useful information about the fields. Note that fields in bold are required/mandatory.

Format:
1
<SystemSettingDefinition>
2
     <Key
Key

Required/mandatory field

Setting name used to reference the setting

>
{String}</Key>
3
     <Name
Name

Required/mandatory field

Short name/description of the setting definition

>
{String}</Name>
4
     <Description
Description

Descrtiption of the setting definition

This field is optional.

>
{String}</Description>
5
     <DefaultValue
DefaultValue

Default value if setting not set for system

This field is optional.

>
{String}</DefaultValue>
6
     <DataType
DataType

Required/mandatory field

Allowed values for setting. Used for validation of input from user.

Input must match the following regular expression pattern: ^(BOOLEAN|STRING|INTEGER|DECIMAL)$

>
{String}</DataType>
7
     <MinimumValue
MinimumValue

For data type integer or decimal a minimum value can be specified, e.g. if a value range is allowed.

This field is optional.

>
{Decimal}</MinimumValue>
8
     <MaximumValue
MaximumValue

For data type integer or decimal a maximum value can be specified, e.g. if a value range is allowed.

This field is optional.

>
{Decimal}</MaximumValue>
9
     <IsRequired
IsRequired

Flag if setting is required/must be set before using system. If this is a sub-setting, this settings must be set when the parent setting is turned on. The user must activate this setting (a system setting value must exist for this setting). If a default value is also specified, that will actually be a suggested value, the setting must still be activated.

Default value: False

This field is optional.

>
{Boolean}</IsRequired>
10
     <Module>
11
          <ModuleId
ModuleId

Required/mandatory field

Module identifier

Minimum value: 100000

>
{Integer}</ModuleId>
12
     </Module>
13
     <ParentSystemSettingDefinition
ParentSystemSettingDefinition

This field is optional.

>
14
          <SystemSettingDefinitionId
SystemSettingDefinitionId

System setting definition identifier

Minimum value: 100000

This field is optional.

>
{Integer}</SystemSettingDefinitionId>
15
     </ParentSystemSettingDefinition>
16
     <DomainValueList
DomainValueList

This field is optional.

>
17
          <Object
Object

Object/archive/context of the values

This field is optional.

>
{String}</Object>
18
          <Field
Field

Fieldname of the DOV

This field is optional.

>
{String}</Field>
19
     </DomainValueList>
20
     <ViewPermission
ViewPermission

This field is optional.

>
21
          <PermissionId
PermissionId

Permission identifier

Minimum value: 100000

This field is optional.

>
{Integer}</PermissionId>
22
     </ViewPermission>
23
     <UpdatePermission
UpdatePermission

This field is optional.

>
24
          <PermissionId
PermissionId

Permission identifier

Minimum value: 100000

This field is optional.

>
{Integer}</PermissionId>
25
     </UpdatePermission>
26
</SystemSettingDefinition>
1
{
2
     "systemSettingDefinition": {
3
          "key
Key

Required/mandatory field

Setting name used to reference the setting

":
"{String}",
4
          "name
Name

Required/mandatory field

Short name/description of the setting definition

":
"{String}",
5
          "description
Description

Descrtiption of the setting definition

This field is optional.

":
"{String}",
6
          "defaultValue
DefaultValue

Default value if setting not set for system

This field is optional.

":
"{String}",
7
          "dataType
DataType

Required/mandatory field

Allowed values for setting. Used for validation of input from user.

Input must match the following regular expression pattern: ^(BOOLEAN|STRING|INTEGER|DECIMAL)$

":
"{String}",
8
          "minimumValue
MinimumValue

For data type integer or decimal a minimum value can be specified, e.g. if a value range is allowed.

This field is optional.

":
"{Decimal}",
9
          "maximumValue
MaximumValue

For data type integer or decimal a maximum value can be specified, e.g. if a value range is allowed.

This field is optional.

":
"{Decimal}",
10
          "isRequired
IsRequired

Flag if setting is required/must be set before using system. If this is a sub-setting, this settings must be set when the parent setting is turned on. The user must activate this setting (a system setting value must exist for this setting). If a default value is also specified, that will actually be a suggested value, the setting must still be activated.

Default value: False

This field is optional.

":
"{Boolean}",
11
          "module": {
12
               "moduleId
ModuleId

Required/mandatory field

Module identifier

Minimum value: 100000

":
"{Integer}"
13
          },
14
          "parentSystemSettingDefinition
ParentSystemSettingDefinition

This field is optional.

":
{
15
               "systemSettingDefinitionId
SystemSettingDefinitionId

System setting definition identifier

Minimum value: 100000

This field is optional.

":
"{Integer}"
16
          },
17
          "domainValueList
DomainValueList

This field is optional.

":
{
18
               "object
Object

Object/archive/context of the values

This field is optional.

":
"{String}",
19
               "field
Field

Fieldname of the DOV

This field is optional.

":
"{String}"
20
          },
21
          "viewPermission
ViewPermission

This field is optional.

":
{
22
               "permissionId
PermissionId

Permission identifier

Minimum value: 100000

This field is optional.

":
"{Integer}"
23
          },
24
          "updatePermission
UpdatePermission

This field is optional.

":
{
25
               "permissionId
PermissionId

Permission identifier

Minimum value: 100000

This field is optional.

":
"{Integer}"
26
          }
27
     }
28
}

The query string is placed after the resource URL, seperated with a questionmark (?). The query string is composed of a series of query parameters with values. See the page about query parameters on how to use these parameters.

$access_token String, optional After successful login you get an access token which needs to be provided in all API requests. Even though it is possible to pass this token as query parameter, we recommended passing it using the HTTP request header as described in Authorization. Note that all access tokens have an expiration time.
$db String, optional Set the database/company for the request
$useMinimumVersion Integer, optional Used to run a new version of an API resource when your API client is running a deprecated API resource. See the Breaking changes page for more information.
$showDomainDescriptions Boolean, optional Set to "true" to include domain descriptions for fields using domain values. See the Domain values page for more information. Default value is false.
$lang String, optional Specifies the language used in the response, following the 3-letter ISO-639-1 [lll]

Read more about filters and sorting on how to use filter parameters and named filters.

Read more about filters and sorting on how to use sortable parameters

Requesting this resource will yield the following response. Mouse over fieldnames (or fieldgroups) for descriptions and other useful information about the fields.

Please note that some fields may be removed from the response, based on user roles/duties/permissions.

Format:
1
<SystemSettingDefinition>
2
     <SystemSettingDefinitionId
SystemSettingDefinitionId

System setting definition identifier

>
{Integer}</SystemSettingDefinitionId>
3
     <Status
Status

Status of system setting definition

Possible domain values can be found here

>
{Integer}</Status>
4
     <Key
Key

Setting name used to reference the setting

>
{String}</Key>
5
     <Name
Name

Short name/description of the setting definition

>
{String}</Name>
6
     <Description
Description

Descrtiption of the setting definition

>
{String}</Description>
7
     <DefaultValue
DefaultValue

Default value if setting not set for system

>
{String}</DefaultValue>
8
     <DataType
DataType

Allowed values for setting. Used for validation of input from user.

>
{String}</DataType>
9
     <MinimumValue
MinimumValue

For data type integer or decimal a minimum value can be specified, e.g. if a value range is allowed.

>
{Decimal}</MinimumValue>
10
     <MaximumValue
MaximumValue

For data type integer or decimal a maximum value can be specified, e.g. if a value range is allowed.

>
{Decimal}</MaximumValue>
11
     <IsRequired
IsRequired

Flag if setting is required/must be set before using system. If this is a sub-setting, this settings must be set when the parent setting is turned on. The user must activate this setting (a system setting value must exist for this setting). If a default value is also specified, that will actually be a suggested value, the setting must still be activated.

>
{Boolean}</IsRequired>
12
     <Module>
13
          <ModuleId
ModuleId

Module identifier

>
{Integer}</ModuleId>
14
          <Name
Name

Name of the module

>
{String}</Name>
15
          <ModuleLink
ModuleLink

Module reference

>
{String}</ModuleLink>
16
     </Module>
17
     <ParentSystemSettingDefinition>
18
          <SystemSettingDefinitionId
SystemSettingDefinitionId

System setting definition identifier

>
{Integer}</SystemSettingDefinitionId>
19
          <SystemSettingDefinitionLink
SystemSettingDefinitionLink

System setting definition reference

>
{String}</SystemSettingDefinitionLink>
20
     </ParentSystemSettingDefinition>
21
     <DomainValueList>
22
          <Object
Object

Object/archive/context of the values

>
{String}</Object>
23
          <Field
Field

Fieldname of the DOV

>
{String}</Field>
24
     </DomainValueList>
25
     <ViewPermission>
26
          <PermissionId
PermissionId

Permission identifier

>
{Integer}</PermissionId>
27
          <Name
Name

Name of the permission

>
{String}</Name>
28
          <PermissionLink
PermissionLink

Permission reference

>
{String}</PermissionLink>
29
     </ViewPermission>
30
     <UpdatePermission>
31
          <PermissionId
PermissionId

Permission identifier

>
{Integer}</PermissionId>
32
          <Name
Name

Name of the permission

>
{String}</Name>
33
          <PermissionLink
PermissionLink

Permission reference

>
{String}</PermissionLink>
34
          <IsChanged
IsChanged

Tells whether this object has been changed locally and are ready to be committed to the Repository

>
{Boolean}</IsChanged>
35
          <ChangedBy
ChangedBy

EmployeeId of the employee making the change

>
36
               <UserId
UserId

User identifier

>
{Integer}</UserId>
37
               <UserLink
UserLink

User reference

>
{String}</UserLink>
38
          </ChangedBy>
39
          <IsPendingDeployment
IsPendingDeployment

Tells whether this object has been changed locally and is ready to be deployed from the Repository

>
{Boolean}</IsPendingDeployment>
40
     </UpdatePermission>
41
</SystemSettingDefinition>
1
{
2
     "systemSettingDefinition": {
3
          "systemSettingDefinitionId
SystemSettingDefinitionId

System setting definition identifier

":
"{Integer}",
4
          "status
Status

Status of system setting definition

Possible domain values can be found here

":
"{Integer}",
5
          "key
Key

Setting name used to reference the setting

":
"{String}",
6
          "name
Name

Short name/description of the setting definition

":
"{String}",
7
          "description
Description

Descrtiption of the setting definition

":
"{String}",
8
          "defaultValue
DefaultValue

Default value if setting not set for system

":
"{String}",
9
          "dataType
DataType

Allowed values for setting. Used for validation of input from user.

":
"{String}",
10
          "minimumValue
MinimumValue

For data type integer or decimal a minimum value can be specified, e.g. if a value range is allowed.

":
"{Decimal}",
11
          "maximumValue
MaximumValue

For data type integer or decimal a maximum value can be specified, e.g. if a value range is allowed.

":
"{Decimal}",
12
          "isRequired
IsRequired

Flag if setting is required/must be set before using system. If this is a sub-setting, this settings must be set when the parent setting is turned on. The user must activate this setting (a system setting value must exist for this setting). If a default value is also specified, that will actually be a suggested value, the setting must still be activated.

":
"{Boolean}",
13
          "module": {
14
               "moduleId
ModuleId

Module identifier

":
"{Integer}",
15
               "name
Name

Name of the module

":
"{String}",
16
               "moduleLink
ModuleLink

Module reference

":
"{String}"
17
          },
18
          "parentSystemSettingDefinition": {
19
               "systemSettingDefinitionId
SystemSettingDefinitionId

System setting definition identifier

":
"{Integer}",
20
               "systemSettingDefinitionLink
SystemSettingDefinitionLink

System setting definition reference

":
"{String}"
21
          },
22
          "domainValueList": {
23
               "object
Object

Object/archive/context of the values

":
"{String}",
24
               "field
Field

Fieldname of the DOV

":
"{String}"
25
          },
26
          "viewPermission": {
27
               "permissionId
PermissionId

Permission identifier

":
"{Integer}",
28
               "name
Name

Name of the permission

":
"{String}",
29
               "permissionLink
PermissionLink

Permission reference

":
"{String}"
30
          },
31
          "updatePermission": {
32
               "permissionId
PermissionId

Permission identifier

":
"{Integer}",
33
               "name
Name

Name of the permission

":
"{String}",
34
               "permissionLink
PermissionLink

Permission reference

":
"{String}",
35
               "isChanged
IsChanged

Tells whether this object has been changed locally and are ready to be committed to the Repository

":
"{Boolean}",
36
               "changedBy
ChangedBy

EmployeeId of the employee making the change

":
{
37
                    "userId
UserId

User identifier

":
"{Integer}",
38
                    "userLink
UserLink

User reference

":
"{String}"
39
               },
40
               "isPendingDeployment
IsPendingDeployment

Tells whether this object has been changed locally and is ready to be deployed from the Repository

":
"{Boolean}"
41
          }
42
     }
43
}

List of available operations/actions for this resource.
See the operations documentation for more information about API operations.

Possible error codes the response might return:

Error 101606 HTTP 404 Module not found
Error 101079 HTTP 400 Mismatch in size of revision parameters
Error 103580 HTTP 404 Setting definition not found
Error 103582 HTTP 400 Settings that have sub-settings can not be assigned as a sub-setting
Error 103581 HTTP 400 Setting name is required
Error 103583 HTTP 400 Cannot change setting name on active setting definitions
Error 103584 HTTP 400 The name contains illegal characters. Only a-z, A-Z and 0-9 are allowed.
Error 103585 HTTP 400 Setting with name {0} already exists
Error 101423 HTTP 400 The Data type is not valid
Error 103586 HTTP 400 The data type of default-/minimum-/maximum value must correspond with data type of the setting definition
Error 103587 HTTP 400 Datatype boolean can not have any default, minimum or maximum value
Error 103588 HTTP 400 Datatype String can not have a minimum or maximum value
Error 103589 HTTP 400 Minimum value cannot be larger than maximum value
Error 103590 HTTP 400 The default value must be within the range of the minimum and maximum values
Error 103591 HTTP 400 The chosen datatype can not have domain values
Error 103592 HTTP 400 The domain value object reference contains illegal characters. Only a-z, A-Z and 0-9 can be used.
Error 103593 HTTP 400 The domain value field reference contains illegal characters. Only a-z, A-Z and 0-9 can be used.
Error 103594 HTTP 400 The selected permission is not active