API

RamBase REST APIs

POST system/roles/{roleId}/duties

Creates a new duty assignment for provided role.

Important: Have you received an email about using a deprecated version of this API resource? Click here to read more about the deprecated version you are using.
HTTP method POST
URI https://api.rambase.net/system/roles/{roleId}/duties
Supported formats Xml, Html, Json (ex. $format=json)
- URI parameter {roleId} Role identifier
Integer, minimum 100000
Successful HTTP status code 201
API resource identifier 2166, version 11

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
<RoleDuty>
2
     <Duty>
3
          <DutyId
DutyId

Required/mandatory field

Duty identifier

Minimum value: 100000

>
{Integer}</DutyId>
4
     </Duty>
5
</RoleDuty>
1
{
2
     "roleDuty": {
3
          "duty": {
4
               "dutyId
DutyId

Required/mandatory field

Duty identifier

Minimum value: 100000

":
"{Integer}"
5
          }
6
     }
7
}

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
<RoleDuty>
2
     <OrganizationalUnitRestriction>
3
          <Type
Type

Type of Organizational unit (ORG) restriction.

Possible domain values can be found here

>
{Integer}</Type>
4
     </OrganizationalUnitRestriction>
5
     <FolderRestriction>{}</FolderRestriction>
6
     <Duty>
7
          <DutyId
DutyId

Duty identifier

>
{Integer}</DutyId>
8
          <Status
Status

Status of the duty

Possible domain values can be found here

>
{Integer}</Status>
9
          <Name
Name

Name of the duty

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

Description of the duty

>
{String}</Description>
11
          <AdmittanceLevel
AdmittanceLevel

How much the duty should weigh in regard to calculation of a users price category (for licence invoicing) . This field is accumulated for the duties a user is assigned, and the sum will define which price category the user should have.

Possible domain values can be found here

>
{Integer}</AdmittanceLevel>
12
          <AllowOrganizationalUnitRestriction
AllowOrganizationalUnitRestriction

Duty allows restriction by Organizational unit (ORG). Permissions that allows it can be added to these duties.

>
{Boolean}</AllowOrganizationalUnitRestriction>
13
          <Repository>
14
               <Scope
Scope

Scope of the Duty

>
{String}</Scope>
15
          </Repository>
16
          <SubModule>
17
               <SubModuleId
SubModuleId

Submodule identifier

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

Name of the sub-module

>
19
                    <ModuleId
ModuleId

Module identifier

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

Name of the module

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

Module reference

>
{String}</ModuleLink>
22
               </Name>
23
               <SubModuleLink
SubModuleLink

Submodule reference

>
{String}</SubModuleLink>
24
          </SubModule>
25
          <DutyLink
DutyLink

Duty reference

>
{String}</DutyLink>
26
     </Duty>
27
</RoleDuty>
1
{
2
     "roleDuty": {
3
          "organizationalUnitRestriction": {
4
               "type
Type

Type of Organizational unit (ORG) restriction.

Possible domain values can be found here

":
"{Integer}"
5
          },
6
          "folderRestriction": "{}",
7
          "duty": {
8
               "dutyId
DutyId

Duty identifier

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

Status of the duty

Possible domain values can be found here

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

Name of the duty

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

Description of the duty

":
"{String}",
12
               "admittanceLevel
AdmittanceLevel

How much the duty should weigh in regard to calculation of a users price category (for licence invoicing) . This field is accumulated for the duties a user is assigned, and the sum will define which price category the user should have.

Possible domain values can be found here

":
"{Integer}",
13
               "allowOrganizationalUnitRestriction
AllowOrganizationalUnitRestriction

Duty allows restriction by Organizational unit (ORG). Permissions that allows it can be added to these duties.

":
"{Boolean}",
14
               "repository": {
15
                    "scope
Scope

Scope of the Duty

":
"{String}"
16
               },
17
               "subModule": {
18
                    "subModuleId
SubModuleId

Submodule identifier

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

Name of the sub-module

":
{
20
                         "moduleId
ModuleId

Module identifier

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

Name of the module

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

Module reference

":
"{String}"
23
                    },
24
                    "subModuleLink
SubModuleLink

Submodule reference

":
"{String}"
25
               },
26
               "dutyLink
DutyLink

Duty reference

":
"{String}"
27
          }
28
     }
29
}

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 101420 HTTP 404 Setting definition not found
Error 104715 HTTP 403 The user level for this duty is not allowed on this role
Error 101824 HTTP 400 The duty already exists on the role
Error 109045 HTTP 400 Local duty can not be assigned to synchronized role
Error 109256 HTTP 400 Local duty can not be assigned to organizational role