Roles can be defined for various job functions. Permissions to perform certain tasks can be assigned to specific roles, and roles can then be assigned to users or user groups.
Returns a collection with a key, ID, and link for each role. This operation is mostly for use in testing; use the query service to find roles that meet certain criteria and specify the properties that are returned.
OK
Bad Request
{- "ia::result": [
- {
- "key": "470",
- "id": "::SYS::Multi Entity Shared-ROLE-FOR - Admin",
- "href": "/objects/company-config/role/470"
}, - {
- "key": "471",
- "id": "::SYS::Multi Entity Shared-ROLE-FOR - BTI",
- "href": "/objects/company-config/role/471"
}
], - "ia::meta": {
- "totalCount": 2,
- "start": 1,
- "pageSize": 100,
- "next": 101,
- "previous": null
}
}
Creates a new role.
Role to create
id required | string Role Id Example: "Employee" | ||||
description | string Description Example: "Full employee permissions including approvals" | ||||
roleType | string Default: "enterprise" Role type Example: "enterprise" | ||||
applyTo | string Default: "loginAndSlideIn" Role is applicable to users with specified access method. Example: "loginAndSlideIn" | ||||
Array of objects List of permission assignments for a specific role | |||||
Array
|
Created
Bad Request
{- "id": "::SYS::Multi Entity Shared-ROLE-FOR - Admin",
- "description": "Administrator role with permissions",
- "roleType": "enterprise",
- "applyTo": "loginAndSlideIn",
- "rolePermissionAssignments": [
- {
- "permission": {
- "id": "253"
}, - "accessRights": [
- "list",
- "readonly"
]
}, - {
- "permission": {
- "id": "207"
}, - "accessRights": [
- "list",
- "readonly",
- "add",
- "modify",
- "delete"
]
}
]
}
{- "ia::result": {
- "key": "470",
- "id": "::SYS::Multi Entity Shared-ROLE-FOR - Admin",
- "href": "/objects/company-config/role/470"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Returns detailed information for a specified role.
key required | string System-assigned unique key for the role. |
OK
Bad Request
{- "ia::result": {
- "key": "470",
- "id": "::SYS::Multi Entity Shared-ROLE-FOR - Admin",
- "description": "Administrator role with permissions",
- "roleType": "enterprise",
- "applyTo": "loginAndSlideIn",
- "audit": {
- "createdDateTime": "2020-11-16T14:27:51Z",
- "modifiedDateTime": "2020-11-16T14:28:11Z",
- "createdBy": "1",
- "modifiedBy": "1"
}, - "rolePermissionAssignments": [
- {
- "key": "30",
- "id": "30",
- "role": {
- "key": "470",
- "id": "470",
- "href": "/objects/company-config/role/470"
}, - "permission": {
- "key": "253",
- "id": "253",
- "name": "taxScheduleMap",
- "module": "purchasing",
- "href": "/objects/company-config/permission/253"
}, - "accessRights": [
- "list",
- "readonly",
- "add",
- "modify",
- "delete"
], - "audit": {
- "createdDateTime": "2020-11-16T14:27:51Z",
- "modifiedDateTime": "2020-11-16T14:28:11Z",
- "createdBy": "1",
- "modifiedBy": "1"
}, - "href": "/objects/company-config/role-policy-assignment/30"
}
], - "roleUsers": [
- {
- "key": "472",
- "id": "472",
- "role": {
- "key": "470",
- "id": "::SYS::Multi Entity Shared-ROLE-FOR - Admin",
- "href": "/objects/company-config/role/470"
}, - "user": {
- "key": "189",
- "id": "Admin",
- "href": "/objects/company-config/user/189"
}, - "audit": {
- "createdDateTime": "2020-11-16T14:27:51Z",
- "modifiedDateTime": "2020-11-16T14:28:11Z",
- "createdBy": "1",
- "modifiedBy": "1"
}, - "href": "/objects/company-config/role-user-map/472"
}
], - "roleGroups": [
- {
- "key": "761",
- "id": "761",
- "role": {
- "key": "470",
- "id": "::SYS::Multi Entity Shared-ROLE-FOR - Admin",
- "href": "/objects/company-config/role/470"
}, - "userGroup": {
- "key": "1",
- "id": "Bypass group",
- "href": "/objects/company-config/user-group/1"
}, - "audit": {
- "createdDateTime": "2020-11-16T14:27:51Z",
- "modifiedDateTime": "2020-11-16T14:28:11Z",
- "createdBy": "1",
- "modifiedBy": "1"
}, - "href": "/objects/company-config/role-user-group-map/761"
}
], - "href": "/objects/company-config/role/470"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Updates an existing role by setting field values. Any fields not provided remain unchanged.
key required | string System-assigned unique key for the role. |
description | string Description Example: "Full employee permissions including approvals" | ||||
roleType | string Default: "enterprise" Role type Example: "enterprise" | ||||
applyTo | string Default: "loginAndSlideIn" Role is applicable to users with specified access method. Example: "loginAndSlideIn" | ||||
Array of objects List of permission assignments for a specific role | |||||
Array
|
OK
Bad Request
{- "description": "Administrator role with permissions",
- "rolePermissionAssignments": [
- {
- "key": "30",
- "accessRights": [
- "list"
]
}, - {
- "permission": {
- "key": "274"
}, - "accessRights": [
- "add"
]
}
]
}
{- "ia::result": {
- "key": "470",
- "id": "::SYS::Multi Entity Shared-ROLE-FOR - Admin",
- "href": "/objects/company-config/role/470"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Deletes a role.
key required | string System-assigned unique key for the role. |
No Content
Bad Request
{- "ia::result": {
- "ia::error": {
- "code": "invalidRequest",
- "message": "A POST request requires a payload",
- "errorId": "REST-1028",
- "additionalInfo": {
- "messageId": "IA.REQUEST_REQUIRES_A_PAYLOAD",
- "placeholders": {
- "OPERATION": "POST"
}, - "propertySet": { }
}, - "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
}
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 0,
- "totalError": 1
}
}
Queries an object for filtered data.
object | string Object type to query, in the form Example: "company-config/role" | ||||||||
fields | Array of strings List of fields to include in the response. Can be any combination of these:
Example: ["key","id","max:vendor.creditLimit"] | ||||||||
Array of equal (object) or not equal (object) or less than (object) or (less than or equal (object)) or greater than (object) or (greater than or equal (object)) or in (object) or not in (object) or between (object) or not between (object) or contains (object) or does not contain (object) or starts with (object) or does not start with (object) or ends with (object) or does not end with (object) Filter conditions to select the objects to return based on their field values. You use operators and conditions to build your filter, such as Example: [{"$eq":{"status":"active"}},{"$gt":{"totalDue":"1000"}},{"$contains":{"name":"Acme"}}] | |||||||||
Array Any of: Field value must be equal to this specified value. For date fields, you can use these macro values that are relative to the current date or the
These are most useful for queries that you want to save and use repeatedly, such as for views or reports. Just change the For example,
| |||||||||
filterExpression | string Default: "and" Logical operators to apply when there are multiple filter conditions. The conditions in the Shortcuts:
Example: "(1 and 2) or 3" | ||||||||
| |||||||||
Array of objects Set the order of the results by specifying field names to sort by and whether they should be in ascending or descending order. Example: [{"totalDue":"asc"},{"lastPaymentMadeDate":"desc"}] | |||||||||
Array
| |||||||||
start | integer First record of the result set to include in the response. Example: 1 | ||||||||
size | integer Number of records to include in the response. Example: 100 |
OK
Bad Request
{- "object": "accounts-payable/vendor",
- "fields": [
- "id",
- "name",
- "status",
- "href"
], - "filters": [
- {
- "$eq": {
- "status": "active"
}
}, - {
- "$eq": {
- "billingType": "openItem"
}
}
], - "filterExpression": "1 and 2",
- "orderBy": [
- {
- "id": "asc"
}
]
}
{- "ia::result": [
- {
- "id": "Vend-00002",
- "name": "Test vendor",
- "status": "active",
- "href": "/objects/accounts-payable/vendor/85"
}, - {
- "id": "VEND-00010",
- "name": "Design Works",
- "status": "active",
- "href": "/objects/accounts-payable/vendor/111"
}
], - "ia::meta": {
- "totalCount": 2,
- "start": 1,
- "pageSize": 100,
- "next": null,
- "previous": null
}
}