# List Permissions

See every permission you can build a role or an API key from, and which of them a custom role may carry. Use the keys in Create Role, Update Role, and Create API Key.

`GET https://connect.mindcloud.co/v2/permissions`

Permissions: any API key can call this endpoint.

## Parameters

### Headers

- `X-Company-Id` (string): Optional. The id of the organization to act in. Leave it out to act in the API key's own organization. A key can also act in its child organizations, and, with "Use this key across all of your organizations" on, in every organization its creator can open in the app. List them with GET /v2/companies. Every response's X-Company-Id header names the organization it acted in. See [Organizations](https://mindcloud.co/docs/api/rest/introduction/organizations).

## Example request

```bash
curl --request GET \
  --url 'https://connect.mindcloud.co/v2/permissions' \
  --header 'Authorization: Bearer $MINDCLOUD_API_TOKEN'
```

## Response fields

- `key` (string): The permission key, such as workflow:run. Roles, API keys, and the effective permissions of a member name permissions by key.
- `name` (string): The permission's display name.
- `area` (string): The part of MindCloud it governs: the key before its first colon, such as workflow or member.
- `assignableToCustomRoles` (boolean): True when a custom role may carry it (Create Role, Update Role).
- `ownerOnly` (boolean): True when only the built-in Owner role holds it; no custom role may carry it.
- `apiKeyGrantable` (boolean): True when an API key may hold it (Create API Key).
