API

Base APIs

POST base/companies/setting-definitions

Create a new company setting definition

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

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
<CompanySettingDefinition>
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 company

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 company 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
     <SubModule>
11
          <SubModuleId
SubModuleId

Required/mandatory field

Submodule identifier

Minimum value: 100000

>
{Integer}</SubModuleId>
12
     </SubModule>
13
     <ParentCompanySettingDefinition
ParentCompanySettingDefinition

This field is optional.

>
14
          <CompanySettingDefinitionId
CompanySettingDefinitionId

Company setting definition identifier

Minimum value: 100000

This field is optional.

>
{Integer}</CompanySettingDefinitionId>
15
     </ParentCompanySettingDefinition>
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. Optional. Set this if the setting is secret, e.g. not visible for customers. NOTE: If the setting is read in an application the user must have this permission if assigned.

Minimum value: 100000

This field is optional.

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

This field is optional.

>
24
          <PermissionId
PermissionId

Permission identifier. Required for active settings. User must have this permission to be allowed to update the value of this setting.

Minimum value: 100000

This field is optional.

>
{Integer}</PermissionId>
25
     </UpdatePermission>
26
</CompanySettingDefinition>
1
{
2
     "companySettingDefinition": {
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 company

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 company 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
          "subModule": {
12
               "subModuleId
SubModuleId

Required/mandatory field

Submodule identifier

Minimum value: 100000

":
"{Integer}"
13
          },
14
          "parentCompanySettingDefinition
ParentCompanySettingDefinition

This field is optional.

":
{
15
               "companySettingDefinitionId
CompanySettingDefinitionId

Company 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. Optional. Set this if the setting is secret, e.g. not visible for customers. NOTE: If the setting is read in an application the user must have this permission if assigned.

Minimum value: 100000

This field is optional.

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

This field is optional.

":
{
25
               "permissionId
PermissionId

Permission identifier. Required for active settings. User must have this permission to be allowed to update the value of this setting.

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
<CompanySettingDefinition>
2
     <CompanySettingDefinitionId
CompanySettingDefinitionId

Company setting definition identifier

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

Status of company 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 company

>
{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 company 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
     <SubModule>
13
          <SubModuleId
SubModuleId

Submodule identifier

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

Name of the submodule

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

Submodule reference

>
16
               <ModuleId
ModuleId

Module identifier

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

Name of the module

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

Module reference

>
{String}</ModuleLink>
19
          </SubModuleLink>
20
     </SubModule>
21
     <ParentCompanySettingDefinition>
22
          <CompanySettingDefinitionId
CompanySettingDefinitionId

Company setting definition identifier

>
{Integer}</CompanySettingDefinitionId>
23
          <CompanySettingDefinitionLink
CompanySettingDefinitionLink

Company setting definition reference

>
{String}</CompanySettingDefinitionLink>
24
     </ParentCompanySettingDefinition>
25
     <DomainValueList>
26
          <Object
Object

Object/archive/context of the values

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

Fieldname of the DOV

>
{String}</Field>
28
     </DomainValueList>
29
     <ViewPermission>
30
          <PermissionId
PermissionId

Permission identifier. Optional. Set this if the setting is secret, e.g. not visible for customers. NOTE: If the setting is read in an application the user must have this permission if assigned.

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

Name of the permission

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

Permission reference

>
{String}</PermissionLink>
33
     </ViewPermission>
34
     <UpdatePermission>
35
          <PermissionId
PermissionId

Permission identifier. Required for active settings. User must have this permission to be allowed to update the value of this setting.

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

Name of the permission

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

Permission reference

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

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

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

EmployeeId of the employee making the change

>
{Integer}</ChangedBy>
40
          <IsPendingDeployment
IsPendingDeployment

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

>
{Boolean}</IsPendingDeployment>
41
     </UpdatePermission>
42
</CompanySettingDefinition>
1
{
2
     "companySettingDefinition": {
3
          "companySettingDefinitionId
CompanySettingDefinitionId

Company setting definition identifier

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

Status of company 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 company

":
"{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 company 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
          "subModule": {
14
               "subModuleId
SubModuleId

Submodule identifier

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

Name of the submodule

":
"{String}",
16
               "subModuleLink
SubModuleLink

Submodule reference

":
{
17
                    "moduleId
ModuleId

Module identifier

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

Name of the module

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

Module reference

":
"{String}"
20
               }
21
          },
22
          "parentCompanySettingDefinition": {
23
               "companySettingDefinitionId
CompanySettingDefinitionId

Company setting definition identifier

":
"{Integer}",
24
               "companySettingDefinitionLink
CompanySettingDefinitionLink

Company setting definition reference

":
"{String}"
25
          },
26
          "domainValueList": {
27
               "object
Object

Object/archive/context of the values

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

Fieldname of the DOV

":
"{String}"
29
          },
30
          "viewPermission": {
31
               "permissionId
PermissionId

Permission identifier. Optional. Set this if the setting is secret, e.g. not visible for customers. NOTE: If the setting is read in an application the user must have this permission if assigned.

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

Name of the permission

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

Permission reference

":
"{String}"
34
          },
35
          "updatePermission": {
36
               "permissionId
PermissionId

Permission identifier. Required for active settings. User must have this permission to be allowed to update the value of this setting.

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

Name of the permission

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

Permission reference

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

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

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

EmployeeId of the employee making the change

":
"{Integer}",
41
               "isPendingDeployment
IsPendingDeployment

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

":
"{Boolean}"
42
          }
43
     }
44
}

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 101015 HTTP 404 Permission not found
Error 101079 HTTP 400 Mismatch in size of revision parameters
Error 101420 HTTP 404 Setting definition not found
Error 101421 HTTP 400 Settings that have sub-settings can not be assigned as a sub-setting
Error 101426 HTTP 400 Setting name is required
Error 101422 HTTP 403 Cannot change setting name on active setting definitions
Error 101428 HTTP 400 Setting with name {0} already exists
Error 101423 HTTP 400 The Data type is not valid
Error 101596 HTTP 400 The data type of default-/minimum-/maximum value must correspond with data type of the setting definition
Error 102650 HTTP 400 Datatype boolean can not have any default, minimum or maximum value
Error 102652 HTTP 400 Datatype String can not have a minimum or maximum value
Error 101597 HTTP 400 Minimum value cannot be larger than maximum value
Error 101598 HTTP 400 The default value must be within the range of the minimum and maximum values
Error 102651 HTTP 400 The chosen datatype can not have domain values
Error 101424 HTTP 400 The domain value object reference contains illegal characters. Only a-z, A-Z and 0-9 can be used.
Error 101425 HTTP 400 The domain value field reference contains illegal characters. Only a-z, A-Z and 0-9 can be used.
Error 102885 HTTP 400 The selected permission is not active
Error 104449 HTTP 400 Permission '{0}' cannot be used as view- or update permission
Error 104448 HTTP 400 Update permission is required