# GetTasksCollectionAcl

## General

### URL

https://{host}/attunityenterprisemanager/api/v1/servers/{server}/tasks?action=acl

### Description

Retrieves a list of users/groups with permissions on all tasks, including a Boolean indication if ACL inheritance is disabled or enabled for each task.

The method returns the explicit ACL only. In other words, it does not return inherited ACLs.

If all of the tasks' ACLs are inherited (that is, no ACL was explicitly defined for any of the tasks), an error will be returned indicating that no ACL was found.

This method can be used together with `PutTasksCollectionAcl` in order to update an existing task's ACL. First call `GetTasksCollectionAcl`, then edit the returned roles as required, and finally, call `PutTasksCollectionAcl`.

### HTTP method

GET

### Required user role

See [Required Enterprise Manager permissions](https://help.qlik.com/en-US/enterprise-manager/May2026/Content/EnterpriseManager/EnterpriseManager_APIGuide/Introduction/AEMPermissions.htm).

## Request parameters

Request parameters

| Location | Name | Required | Example |
| --- | --- | --- | --- |
| URL | Host [string] | Yes | computer.network.net |
| URL | Server [string] | Yes | myrepsrv1 |
| Header | EnterpriseManager.APISessionID [string] | Yes | wCo0\_KvjEUFROvfHF5KGrw |

## Response body

```
{
  "admin_role": {
    "users": [
      { "name": "{string}" },
      { "name": "{string}" }
    ],
    "groups": [
      { "name": "{string}" },
      { "name": "{string}" }
    ]
  },
  "designer_role": {
    "users": [
      { "name": "{string}" },
      { "name": "{string}" }
    ],
    "groups": [
      { "name": "{string}" },
      { "name": "{string}" }
    ]
  },
  "operator_role": {
    "users": [
      { "name": "{string}" },
      { "name": "{string}" }
    ],
    "groups": [
      { "name": "{string}" },
      { "name": "{string}" }
    ]
  },
  "viewer_role": {
    "users": [
      { "name": "{string}" },
      { "name": "{string}" }
    ],
    "groups": [
      { "name": "{string}" },
      { "name": "{string}" }
    ]
  },
  "none": {
    "users": [
      { "name": "{string}" },
      { "name": "{string}" }
    ],
    "groups": [
      { "name": "{string}" },
      { "name": "{string}" }
    ]
  }
}
```

## Response parameters

* admin\_role

  * users: An array of users assigned as Admins on all tasks.

    * name: A single Admin user.

  * groups: An array of groups assigned as Admins on all tasks.

    * name: A single Admin group.

* designer\_role

  * users: An array of users assigned as Designers on all tasks.

    * name: A single Designer user.

  * groups: An array of groups assigned as Designers on all tasks.

    * name: A single Designer group.

* operator\_role

  * users: An array of users assigned as Operators on all tasks.

    * name: A single Operator user.

  * groups: An array of groups assigned as Operators on all tasks.

    * name: A single Operator group.

* viewer\_role

  * users: An array of users assigned as Viewers on all tasks.

    * name: A single Viewer user.

  * groups: An array of groups assigned as Viewers on all tasks.

    * name: A single Viewer group.

* none

  * users: An array of users with no permissions on all tasks.

    * name: A single user.

## cURL example

### Request

`curl -i -k --header "EnterpriseManager.APISessionID: wCo0_KvjEUFROvfHF5KGr" https://computer.network.net/attunityenterprisemanager/api/v1/servers/{server1}/tasks?action=acl`

### Response

` Headers:
                 `

`HTTP/1.1 200 OK`

`Cache-Control: no-cache, no-store`

`Content-Length: 502`

`Content-Type: application/json; charset=utf-8`

`Task: Microsoft-HTTPAPI/2.0`

`Date: Mon, 26 Dec 2016 13:18:27 GMT`

### Payload

```
{
  "admin_role": {
    "users": [
      {"name": "QLIK\\Paul.Clarke"},
      {"name": "QLIK\\testAuth1"}
    ],
    "groups": [
      {"name": "QLIK\\AttunityEnterpriseManagerAdmins"}
    ]
  },
  "designer_role": {
    "users": [
      {"name": "QLIK\\Marisa.Lewis"},
      {"name": "QLIK\\testAuth2"}
    ],
    "groups": [
      {"name": "QLIK\\AttunityEnterpriseManagerDesigners"}
    ]
  },
  "operator_role": {
    "users": [
      {"name": "QLIK\\David.Foster"},
      {"name": "QLIK\\testAuth3"}
    ],
    "groups": [
      {"name": "QLIK\\AttunityEnterpriseManagerOperators"}
    ]
  },
  "viewer_role": {
    "users": [
      {"name": "QLIK\\Laura.Todd"},
      {"name": "QLIK\\testAuth4"}
    ],
    "groups": [
      {"name": "QLIK\\AttunityEnterpriseManagerViewers"}
    ]
  },
  "none": {
    "users": [
      {"name": "QLIK\\Jim.Smith"},
      {"name": "QLIK\\test5"}
    ]
  }
}
```

## Error response

All of the [general errors](https://help.qlik.com/en-US/enterprise-manager/May2026/Content/EnterpriseManager/EnterpriseManager_APIGuide/CurlAPI/error_handling.htm) as well as the errors listed in the table below.

Error responses

| HTTP Code | Enterprise Manager Code | Text | Description |
| --- | --- | --- | --- |
| 500 | AEM\_GET\_SERVER\_ACL\_INNER\_ERR | Failed to get ACL of task "{task}".<br><br>Error: "{message}". | Returned if Qlik Enterprise Manager encounters an error/exception when trying to get a task's ACL. |
| 500 | AEM\_SERVER\_HAS\_NO\_ACL | ACL for task "{task}" could not be found. | Returned if no explicit ACL is defined for the specified task.<br><br>Information note<br><br>A task that does not have its own explicit ACL inherits the ACL from its ancestors. Inherited ACLs are not returned by this method. |